JSONArray effectArr = JSONArray.parseArray(JSON.toJSONString(effectList));
这里断点,effectArr没有问题:[{ "areaList": [ { "id": 2, "name": "马来西亚", "isCountry": true }, { "id": 2, "name": "华南", "isCountry": false } ], "periodList": [ { "startTime": "11", "endTime": "12" }, { "startTime": "2", "endTime": "3" } ], "recommendLine": 1, "state": 1 } ]
转成json字符串后:effectArr.toJSONString(),[ [{ "isCountry": true, "name": "马来西亚", "id": 2, "periodList": [{ "startTime": "11", "endTime": "12" }, { "startTime": "2", "endTime": "3" }], "recommendLine": 1, "state": 1 }, { "isCountry": false, "name": "华南", "id": 2, "periodList": [{ "$ref": "$[0][0].periodList[0]" }, { "$ref": "$[0][0].periodList[1]" }], "recommendLine": 1, "state": 1 }] ]
,可以看到第一处的periodList没有问题,第二处就出错了。
这里我手动遍历Arr了,用StringBuilder拼接了,希望可以修复下。
1条答案
按热度按时间cetgtptt1#
@wwsgithub ,可能需要这个
SerializerFeature.DisableCircularReferenceDetect
来关闭循环引用检测。