FastJSON 禁用循环引用检测DisableCircularReferenceDetect(“$ref“)

FastJSON全局禁用循环引用检测DisableCircularReferenceDetect(“$ref”)

全局禁用

执行代码修改静态变量全局默认关闭,就不会再对重复引用改为"$ref":xxx了

JSON.DEFAULT_GENERATE_FEATURE |= SerializerFeature.DisableCircularReferenceDetect.getMask();

关闭之前序列化出来的数据
JSON.toJSONString(detailVo);
有个" r e f " : " ref":" ref":".auditPriceDetail.addInfoList"

{"auditPriceDetail":{"addInfoList":[{"acid":"CB596A902CDD0079","amountLimit":500,"discountDetail":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机, 满500加600, 加价金额:600","discountPrice":600,"discountsName":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机","originalPrice":857,"value":600,"valueType":1}],"addPrice":600,"levelId":"1574336224519077889","levelPackage":"08G","originalPrice":857,"totalPrice":1457},"estimatePriceDetail":{"addInfoList":[{"acid":"CB596A902CDD0079","amountLimit":1000,"discountDetail":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机, 满1000加680, 加价金额:680","discountPrice":680,"discountsName":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机","originalPrice":1047,"value":680,"valueType":1}],"addPrice":680,"levelPackage":"07F","originalPrice":1047,"totalPrice":1727},"secondVisitDetail":{{"$ref":"$.auditPriceDetail.addInfoList"}"addPrice":600,"levelId":"1574336224519077889","levelPackage":"08G","originalPrice":857,"totalPrice":1457}}

关闭之后正常

{"auditPriceDetail":{"addInfoList":[{"acid":"0F6A87B0403414AF","amountLimit":300,"discountDetail":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机, 满300加560, 加价金额:560","discountPrice":560,"discountsName":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机","originalPrice":416,"value":560,"valueType":1}],"addPrice":560,"levelId":"1574329517856342017","levelPackage":"07F","originalPrice":416,"totalPrice":976},"estimatePriceDetail":{"addInfoList":[{"acid":"0F6A87B0403414AF","amountLimit":500,"discountDetail":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机, 满500加600, 加价金额:600","discountPrice":600,"discountsName":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机","originalPrice":718,"value":600,"valueType":1}],"addPrice":600,"levelPackage":"03B","originalPrice":718,"totalPrice":1318},"secondVisitDetail":{"addInfoList":[{"acid":"0F6A87B0403414AF","amountLimit":300.00,"discountDetail":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机, 满300加560, 加价金额:560","discountPrice":560.00,"discountsName":"荣耀Magic6系列新品以旧换新补贴(1月11日-1月31日)指定旧机","originalPrice":416,"value":560.00,"valueType":1}],"addPrice":560,"levelId":"1574329517856342017","levelPackage":"07F","originalPrice":416,"totalPrice":976}}

局部禁用

序列化的时候带上SerializerFeature.DisableCircularReferenceDetect特性
JSON.toJSONString(detailVo, SerializerFeature.DisableCircularReferenceDetect);

posted @   HumorChen99  阅读(292)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2021-01-19 最新亲测可用Tendis 安装 三主三从 主从复制 集群搭建教程、热搬迁迁移,主从测试,常见问题
2021-01-19 2021年1月19日最新Let‘s encrypt免费证书安装和更新教程,亲测可用
点击右上角即可分享
微信分享提示