在开发过程中遇到一个问题,服务器经过排序返回后的字符串数据使用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();
原文:https://blog.csdn.net/long2010110/article/details/81537820