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);
相关推荐
小兔薯了14 分钟前
7. LNMP-wordpress
android·运维·服务器·数据库·nginx·php
L***d6701 小时前
mysql的主从配置
android·mysql·adb
曹牧2 小时前
Java: Json的键值双引号
java·chrome·json
Sammyyyyy2 小时前
PHP 8.5 新特性:10 大核心改进
android·php·android studio
TO_ZRG3 小时前
Unity 通过 NativePlugin 接入Android SDK 指南
android·unity·游戏引擎
n***84073 小时前
Springboot-配置文件中敏感信息的加密:三种加密保护方法比较
android·前端·后端
最笨的羊羊3 小时前
Flink CDC系列之:Kafka JSON 序列化器JsonSerializationSchema
json·schema·flink cdc·serialization·序列化器·系列·kafkajson
东东2334 小时前
GeoJSON 介绍:Web 地图数据的通用语言
前端·javascript·json
方白羽4 小时前
一次由 by lazy 引发的“数据倒灌”,深入理解 `by`关键字、`lazy`函数的本质
android·kotlin·app
v***55344 小时前
MySQL 中如何进行 SQL 调优
android·sql·mysql