没有默认构造函数的杰克逊第三方类

时间:2012-08-07 01:13:16

标签: java json jackson

我正在尝试使用Jackson向/从Json读取/写入我的POJO。截至目前,除了第三方课程外,我已经为我的课程配置并工作了。当试图读入Json我得到错误:

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

经过几次快速谷歌搜索后,我的课程似乎需要default constructoroverride the default constructor with annotations。不幸的是,失败的类来自第三方库,并且该类没有默认构造函数,显然我不能覆盖代码。

所以我的问题是,我能做些什么或者我运气不好吗?

感谢。

1 个答案:

答案 0 :(得分:22)

您可以使用Jackson's Mix-Ins feature,再加上the Creator feature。 Mix-Ins功能减少了对原始第三方代码进行注释的需要,而Creator功能为自定义实例创建提供了一种机制。

对于更多自定义,编写a custom deserializer并不太复杂。