1
我有一个自定义解串器我如何向模块添加一个列表的Jackson自定义反序列化器?
class MyListDeserialiser extends JsonDeserializer<List<MyObject>>{
@Override
public List<MyObject> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
....
return myListOfObjects; }
}
然后我需要把它添加到杰克逊映射器模块
我试图
public class MyModule extends SimpleModule {
public MyModule() {
super(new Version(1, 0, 0, "", null, null));
addDeserializer(TypeFactory.defaultInstance().constructCollectionType(List.class, MyObject.class).getClass(),
new MyListDeserialiser());
}
但没有奏效。
TypeFactory是正确的方式还是与反序列化器定义的问题?
我不想使用注释,所以这是我唯一知道的其他方法。我不想将这些功能直接添加到对象映射器中,因为我将有很多自定义的反序列化,并且我想将所有代码隐藏在模块中。
在此先感谢
“没有工作”并不真正解释发生了什么。 – Johanneke