溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JSON數據重復出現$ref怎么辦

發(fā)布時間:2021-06-22 14:19:07 來源:億速云 閱讀:809 作者:chen 欄目:大數據

本篇內容主要講解“JSON數據重復出現$ref怎么辦”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“JSON數據重復出現$ref怎么辦”吧!

JSON 數據重復 出現$ref

JSONArray  類型  如果我們往里面add數據的時候 如果數據相同,那么就會被替換成 $ref:   也就是被簡化了 因為數據一樣所直接 指向上一條數據

循環(huán)引用:當一個對象包含另一個對象時,fastjson就會把該對象解析成引用。引用是通過$ref標示的,下面介紹一些引用的描述

  • "$ref":".." 上一級

  • "$ref":"@" 當前對象,也就是自引用

  • "$ref":"$" 根對象

  • "$ref":"$.children.0" 基于路徑的引用,相當于 root.getChildren().get(0)

 例如下面這3個銀行卡都是建行的,那么就會出現這個問題,因為bank信息完全一致

JSON數據重復出現$ref怎么辦

因為我們要在前端展示數據 所以這樣肯定不對 ,那么如果解決呢

網上都說是加上SerializerFeature.DisableCircularReferenceDetect

1   首先把JSONArray 轉成string  這個時候加上SerializerFeature.DisableCircularReferenceDetect

JSONArray.toJSONString(userBankJsonArray, SerializerFeature.DisableCircularReferenceDetect)

2  因為之前是JSON格式的  所以我們還要把string轉成JSON

JSONObject.parse(JSONArray.toJSONString(userBankJsonArray, SerializerFeature.DisableCircularReferenceDetect))

然后在傳到前端  前端解析就沒問題了   

到此,相信大家對“JSON數據重復出現$ref怎么辦”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)
推薦閱讀:
  1. REF CURSOR 總結
  2. ref 與 out

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI