2011-08-21 117 views

回答

6

您可以标注一个mix-in接口,如果你想控制的第三方类产生JSON。

在这里阅读更多:http://wiki.fasterxml.com/JacksonMixInAnnotations

+0

迄今为止效果很好,谢谢。在我设定答案之前,我会等到@Bozho收到有关替代方案的回复,因为另一种方式需要的努力要少得多。 – Mitch

+0

我现在遇到了一个将对象写入JSON的问题,Jackson在其中可以串行化_every_字段。这导致某些类的堆栈溢出和其他二进制数据的大量转储。有没有比'@ JsonIgnore'每个getter/field更简单的方法? – Mitch

+0

我想我已经找到[解决方案](http://www.cowtowncoder.com/blog/archives/2011/02/entry_443.html),但我不确定是否有办法禁用自动 - 检测吧几个领域... – Mitch

3

正如任何对象 - 它传递给objectMapper.readValue(..)/objectMapper.writeValue(..)

+0

哇,试图在评论中写代码真的很烂在这个网站上。忘记那个......我感兴趣的Animation构造函数有两个参数:一个Image对象数组(它的构造函数中接受一个名为ref的字符串)命名的帧和一个名为duration的整数。我写了一个单元测试来尝试一下:[http://pastebin.com/9F7uZQjX](http://pastebin.com/9F7uZQjX) 另外,[here](http://slick.cokeandcode.com/ javadoc/index.html?org/newdawn/slick/Image.html)是显示Image构造函数的Image文档。 – Mitch

+0

如果有帮助,Mix-ins注释可用于表示构造函数的使用。有时,对于大多数异国情调的第三方类型,自定义反序列化器是最简单的方法。 – StaxMan

相关问题