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);
相关推荐
编程圈子1 小时前
操作系统学习14 IDT + PIC + 键盘中断
android·学习·计算机外设
代码的小搬运工3 小时前
网络请求(NSURL、NSURLRequest、NSURLSessionDataTask、协议回调与 JSON 数据的基本流向)
网络·数据库·json
齊家治國平天下8 小时前
Android 14 Vehicle HAL (VHAL) 设计与实现深度解析
android·aaos·carservice·车载开发·android 14·vhal·vehicle hal
AFinalStone14 小时前
Android 7系统网络(八)应用API层—ConnectivityManager使用与实战调试
android·网络
plainGeekDev14 小时前
kapt 替换为 KSP
android·java·kotlin
蜡台15 小时前
通过Gradle脚本声明更改Java变量
android·java·开发语言·python·kotlin·gradle·groovy
2601_9609067217 小时前
网络防御等最先进AI模型领域
人工智能·json·hbase·flume·storm
阿pin18 小时前
Android随笔-SharedPreferences
android·sp
阿pin18 小时前
Android随笔-DataStore
android·datastore
茶栀(*´I`*)19 小时前
Android 测试入门指南:ADB 基础配置与常用设备管理命令解析
android·adb