開發過程中遇到乙個問題,伺服器經過排序返回後的字串資料使用fastjson解析後,資料順序發生變化,引起業務異常。
解決辦法:
1、解析時增加引數不調整順序
jsonobject respondebodyjson = jsonobject.parseobject(jsonstr, feature.orderedfield);
2、初始化json物件為有序物件:
jsonobject retobj = new jsonobject(true);
這樣生成的json物件就與放入資料時一致。
3、使用gson解析
jsonobject returndata = new jsonparser().parse(replystring).getasjsonobject();
json字串序列化後如何保持順序不變
使用阿里巴巴的fastjson對json字串進行序列化,序列化之後發現順序發生了改變,導致之後業務出現問題。
解決方法:
linkedhashmapjson = json.parseobject(message,linkedhashmap.class, feature.orderedfield);
jsonobject jsonobject=new jsonobject(true
);jsonobject.putall(json);
先將字串轉化為linkedhashmap,然後定義有序的json物件,將map物件複製到json物件中即可。
使用fastjson解析資料後導致順序改變問題
在開發過程中遇到乙個問題,伺服器經過排序返回後的字串資料使用fastjson解析後,資料順序發生變化,引起業務異常。解決辦法 1 解析時增加引數不調整順序 jsonobject respondebodyjson jsonobject.parseobject jsonstr,feature.order...
fastjson解析json資料
fastjson為阿里巴巴推出來的對於解析的字段首字母是大寫的,容易出問題 import j a.util.arraylist import j a.util.list import com.alibaba.fastjson.json public class json fastjson stude...
使用FastJson解析JSON資料
spring boot預設的json使用起來比較不習慣,所以很自然我就想我能不能使用fastjson進行json解析呢?引入fastjson依賴庫 com.alibaba fastjson 1.2.15 這裡要說下很重要的話,官方文件說的1.2.10以後,會有兩個方法支援httpmessagecon...