解析json对象出现$ref: “$.list[0]“的解决办法

个人理解,是因为在循环里添加或设置同一个对象,然后解析list中引用的数据时,jvm避免数据溢出,会自动处理为“循环引用”,而出现循环引用,fastjson就会把该对象解析成引用,数据以引用的方式传给前台,前台自然无法解析出这种引用的数据。

解决方法

可以禁止循环引用,不过我个人的做法是重新看看自己的代码,既然知道了原因,那么就可以从代码入手,比如说是不是在循环外定义了一个对象,然后在循环内不断给这个对象赋值然后又设值给另一个对象,导致最后返回的json里出现$ref: "$.list[0]这样的情况。

修改代码后,问题确实是解决了,所以知道原因后,建议实际情况具体分析,首要看代码,其次再想其他。

匿名

发表评论

匿名网友