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);
相关推荐
_李小白16 分钟前
【Android FrameWork】延伸阅读: Android应用安装过程
android
Lxinccode32 分钟前
python(67) : json解析异常json.decoder.JSONDecodeError
json·json解析·json解析报错·jsondecodeerror
光头闪亮亮1 小时前
Android手持机扫码出入库的开发详解-6.APP下载更新
android
光头闪亮亮1 小时前
Android手持机扫码出入库的开发详解-7.SQLite CRUD操作
android
键来大师1 小时前
Android16 设置壁纸出现APK重启问题和悬浮控件等图标变成黑色图框
android·framework·rk3576
_李小白1 小时前
【Android FrameWork】第四十二天:PMS main函数
android
Violet_YSWY2 小时前
我要生成上边是表头,左边是平均值、方差等的表格如何json
json
BoomHe2 小时前
Android LMK(Low Memory Killer)机制
android
时光呀时光慢慢走2 小时前
MAUI 开发安卓 MQTT 客户端:实现远程控制 (完整源码 + 避坑指南)
android·物联网·mqtt·c#
成都大菠萝3 小时前
2-2-44 快速掌握Kotlin-函数类型操作
android