如何使用Jackson Databind反序列化嵌套的泛型类?

时间:2018-09-12 16:08:43

标签: java json generics jackson deserialization

我想使用Jackson的Object Mapper将JSON反序列化为通用类(例如Foo)。首先,我用这个:

JavaType type = mapper.getTypeFactory().constructParametricType(valueType, valueInnerType);
Foo<Bar> response = mapper.readValue(inStream, type);

输入所有内容时,一切都很好!但是我想归纳反序列化这些对象的方法。例如,使用相同的方法,我想反序列化Foo2类的对象和Foo类的对象,所有方法都使用相同的方法。

我可以执行两种通用方法:

public <T> T deserialize(Stream inStream, Class<T> classLiteral);
public <T, TInner> ??? deserialize(Stream inStream, Class<T> classLiteral, Class<TInner> innerClassLiteral);

但是我不知道是什么类型,我应该返回。

这是正确的方法吗?还是有更好的方法可以做到这一点?

0 个答案:

没有答案