JSONArray? 類型? 如果我們往里面add數據的時候 如果數據相同,那么就會被替換成 $ref:? ?也就是被簡化了 因為數據一樣所直接 指向上一條數據
?
- "$ref":".." 上一級
- "$ref":"@" 當前對象,也就是自引用
- "$ref":"$" 根對象
- "$ref":"$.children.0" 基于路徑的引用,相當于 root.getChildren().get(0)
?例如下面這3個銀行卡都是建行的,那么就會出現這個問題,因為bank信息完全一致
?
因為我們要在前端展示數據 所以這樣肯定不對 ,那么如果解決呢
網上都說是加上SerializerFeature.DisableCircularReferenceDetect
1? ?首先把JSONArray 轉成string? 這個時候加上SerializerFeature.DisableCircularReferenceDetect
JSONArray.toJSONString(userBankJsonArray, SerializerFeature.DisableCircularReferenceDetect)
2? 因為之前是JSON格式的? 所以我們還要把string轉成JSON
JSONObject.parse(JSONArray.toJSONString(userBankJsonArray, SerializerFeature.DisableCircularReferenceDetect))
?
然后在傳到前端? 前端解析就沒問題了? ?
?