JSON 转换问题 $ref“: “$[0].list[1]

现象

java 复制代码
[
    {
        "delete": false,
        "index": 0,
        "list": [
            {
                "duration": 71000,
                "id": 0,
                "mediumId": 9231114101362,
                "path": "",
                "point": 100,
                "title": "垃圾"
            },
            {
                "duration": 66000,
                "id": 0,
                "mediumId": 9231114112346,
                "path": "",
                "point": 100,
                "title": "切糕"
            },
            {
                "$ref": "$[0].list[1]"
            },
            {
                "$ref": "$[0].list[0]"
            }
        ],
        "tagId": "23080713857"
    }
]

解决方法

在list集合中出现" r e f " : " ref": " ref":".list"表示在该list中存在重复引用的情况。为了解决这个问题,可以使用FastJson提供的关闭引用检测的功能。

JSON.toJSONString(list, SerializerFeature.DisableCircularReferenceDetect);

java 复制代码
        List<Object> list = new ArrayList<>();
        Object obj1 = new Object();
        Object obj2 = new Object();
        list.add(obj1);
        list.add(obj2);
        list.add(list.get(1));

        String jsonString = JSON.toJSONString(list, SerializerFeature.DisableCircularReferenceDetect);
        System.out.println(jsonString);
相关推荐
Proud lion23 分钟前
Apipost 脚本高频场景最佳实践:搞定接口签名验证、登录令牌刷新、动态参数生成等
android
介一安全34 分钟前
【Frida Android】实战篇5:SSL Pinning 证书绑定绕过 Hook 教程(二)
android·网络安全·逆向·安全性测试·frida
2501_9371931440 分钟前
PLB-TV 影视!无广告 + 4K 高清
android·源码·源代码管理·机顶盒
阿斌_bingyu7091 小时前
uniapp实现android/IOS消息推送
android·ios·uni-app
Android系统攻城狮1 小时前
Android内核进阶之周期更新PCM状态snd_pcm_period_elapsed:用法实例(九十二)
android·pcm·android内核·音频进阶
Cola可洛2 小时前
修复Flyme移植BUG
android·bug
消失的旧时光-19432 小时前
Kotlinx.serialization 使用指南
android·kotlin·json
消失的旧时光-19433 小时前
Kotlinx.serialization 项目集成
android·kotlin·json
梦里不知身是客114 小时前
datax如何做增量导入
android
灵晔君5 小时前
C++标准模板库(STL)——list的使用
c++·list