使用fastjson将对象转换成json字符串 JSON.toJSONString(tableResult1)
这个tableResult1对象在转换之前顺序没有问题,转换后出现了顺序不一致,
两种解决方法
第一种:通过在实体类添加(未尝试--字段属性太多)
@JSONType(orders={"name","age","gender","height","weight"})
第二种:是在实体类属性上加注解(有多少字段加多少按照从1到大的顺序加上)@JSONField(ordinal = 1)
在存储到数据库顺序没有发生变化
使用fastjson将字符串转换成jsonObject对象 ,这里有四种方法我只尝试了这两种种
第一种:Feature.OrderedField--作用解析时增加参数不调整顺序
JSON.parseObject(wanalysis.getTab1(),Feature.OrderedField);//顺序没有改变
方法二:配置有序对象
JSONObject.parseObject(str,LinkedHashMap.class,Feature.OrderedField);//改方法使用出现了错误
方法三:初始化json对象为有序对象
JSONObject retObj = new JSONObject(true);//未尝试
方法三:使用Gson解析
JsonObject returnData = new JsonParser().parse(str).getAsJsonObject();//未尝试
一定注意的一点:因为项目整合了mybatis所以实体类中的属性字段开头必须小写,不然的话查询出来的对象也会引起顺序不一致的问题: