一尘不染

没有默认构造函数的Jackson 3rd Party Class

json

我正在尝试使用Jackson来向Json读/写我的POJO。截至目前,我已经为我的班级进行了配置和工作,但第3方班级除外。尝试读取Json时出现错误:

org.codehaus.jackson.map.JsonMappingException: No suitable constructor found for type

在Google进行几次快速搜索后,看来我的课程需要默认的构造函数或使用注释覆盖默认的构造函数。不幸的是,失败的类来自第3方库,该类没有默认的构造函数,我显然不能覆盖代码。

所以我的问题是,对此我能做些什么吗?还是我不走运?

谢谢。


阅读 200

收藏
2020-07-27

共1个答案

一尘不染

您可以利用Jackson的混入功能以及Creator功能。Mix-
Ins功能减轻了注释原始第三方代码的需要,并且Creator功能提供了用于自定义实例创建的机制。

对于更多的自定义,编写自定义反序列化器并不需要太多。

2020-07-27