Java对象图到JSON转换,带循环

时间:2011-01-24 05:56:15

标签: java json

如何将Java对象图转换为JSON,其中图形具有循环依赖/循环?

4 个答案:

答案 0 :(得分:7)

有许多开源库可以生成JSON。泽西岛可以打破循环依赖。对于其他人,您可能想要谷歌。

答案 1 :(得分:2)

注意:这个答案是很久以前写的。使用Gson,Jersey或Jackson。

我在上一个项目中使用了json-simple。它不会引入任何不需要的项目依赖项(例如apache-commons jar),并且足以正确解析/生成JSON。

您仍然需要自己管理循环引用。我真的怀疑是否有这样一个库来构建来处理这个问题。您可以通过添加到Set转换的任何对象,然后只是检查您要转换的对象是否在集合中来轻松完成此操作。

另外,我不认为json-simple会自动序列化一个对象;也就是说,您必须将要添加到JSON的数据提供给它。它只是为你处理所有混乱的格式。

答案 2 :(得分:0)

不确定循环依赖的含义,JSON无法表达引用。有很多开源JSON库检查链接http://x-stream.github.io/json-tutorial.html以将java对象转换为JSON

答案 3 :(得分:0)

如果您使用的是fastxml。有新的和看涨期权 @JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class,property =“@ id”)

。结帐this for more info

只需确保您的fastxml版本适合该