JSON 数据重复 出现$ref

JSON 数据重复 出现$ref

JSONArray  类型  若是咱们往里面add数据的时候 若是数据相同,那么就会被替换成 $ref:   也就是被简化了 由于数据同样所直接 指向上一条数据html

 

循环引用:当一个对象包含另外一个对象时,fastjson就会把该对象解析成引用。引用是经过$ref标示的,下面介绍一些引用的描述前端

  • "$ref":".." 上一级
  • "$ref":"@" 当前对象,也就是自引用
  • "$ref":"$" 根对象
  • "$ref":"$.children.0" 基于路径的引用,至关于 root.getChildren().get(0)

 例以下面这3个银行卡都是建行的,那么就会出现这个问题,由于bank信息彻底一致json

 

由于咱们要在前端展现数据 因此这样确定不对 ,那么若是解决呢spa

网上都说是加上SerializerFeature.DisableCircularReferenceDetecthtm

1   首先把JSONArray 转成string  这个时候加上SerializerFeature.DisableCircularReferenceDetect对象

JSONArray.toJSONString(userBankJsonArray, SerializerFeature.DisableCircularReferenceDetect)blog

2  由于以前是JSON格式的  因此咱们还要把string转成JSONget

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

 

而后在传到前端  前端解析就没问题了   it

相关文章
相关标签/搜索