开发者社区> 问答> 正文

fastjson 2 禁止循环引用的序列化应该如何设置?

在 fastjson1 版本中,可以设置禁止循环引用序列化,代码如下:

public class Demo {

public static void main(String[] args) {
    Person daddy = new Person();
    daddy.setAge(30);
    daddy.setName("爸爸");

    daddy.setPerson(daddy);

    // fastjson1 可以设置禁止循环引用序列化
    System.out.println(com.alibaba.fastjson.JSON.toJSONString(daddy, SerializerFeature.DisableCircularReferenceDetect));
    // fastjson2 未找到设置方案
    System.out.println(com.alibaba.fastjson2.JSON.toJSONString(daddy));
}

}

class Person { private String name; private int age; private Person person;

// get;set....

}

执行结果:

fastjson1:{"age":30,"name":"爸爸","person":{"$ref":".."}} fastjson2:直接报错

原提问者GitHub用户chimmhuang

展开
收起
飘飘斯嘉丽 2023-04-21 12:02:14 843 0
1 条回答
写回答
取消 提交回答
  • 参考这个:https://github.com/alibaba/fastjson2/blob/main/docs/features_cn.md

    回答3.png

    原回答者GitHub用户wsxe9988

    2023-04-21 14:41:10
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载