JSON Jackson共享参考资料

时间:2012-01-23 15:32:02

标签: json reference jackson

我有一个由另外两个对象引用的对象

我使用Jackson来序列化我的对象,但发现我的共享对象是重复的而不是引用。

原因是据我所知,杰克逊只能按价值而非参考序列化。

我没有成功地寻找一些推荐的解决方案。

感谢任何和所有帮助。

目前Jackson Lib 1.8.3

2 个答案:

答案 0 :(得分:7)

好时光过去了,杰克逊2.0出局了。这是要求的功能!我回答这个,所以像我这样的人知道它可用

https://github.com/FasterXML/jackson-docs/wiki/Presentation-Jackson-2.0

答案 1 :(得分:5)

目前(1.9)你必须编写自定义序列化器,解串器来处理这个问题。处理对象标识没有开箱即用的支持。

在Java框架中,我所知道的唯一支持对象标识的是XStream

对于它的价值,杰克逊有一个长期的feature request来增加支持。并且这有可能在2.0中得到解决。但即使它会,它也需要一段时间(一两个月)。

UPDATE(2013年4月):根据其他已接受的答案,此功能 - @JsonIdentityInfo - 确实包含在Jackson 2.0中,并且可用。无需自定义(反)序列化器。