在开发过程中遇到一个问题:服务器经过排序返回后的字符串数据在使用fastjson解析后,数据顺序发生了变化,这个问题也就是:使用fastjson解析数据后导致顺序改变或者说是如何保持String字符串转为json对象时顺序不变

解决方法:

方法一:解析时增加参数不调整顺序(亲测使用有效)

JSONObject respondeBodyJson = JSONObject.parseObject(str, Feature.OrderedField);

方法二:配置有序对象

JSONObject.parseObject(str,LinkedHashMap.class,Feature.OrderedField);

方法二:初始化json对象为有序对象

JSONObject retObj = new JSONObject(true);

方法三:使用Gson解析

JsonObject returnData = new JsonParser().parse(str).getAsJsonObject();

这样生成的json对象就与放入数据时保持一致了

注意:引入的fastjson相关的jar包版本要高于1.2.3,因为Feature.OrderedField是从1.2.3开始的

JSONObject.parseObject解析数据后保持顺序不变相关推荐

  1. fastjson解析数据后导致顺序改变问题

    开发过程中遇到一个问题,服务器经过排序返回后的字符串数据使用fastjson解析后,数据顺序发生变化,引起业务异常. 解决办法: 1.解析时增加参数不调整顺序 JSONObject respondeB ...

  2. 使用fastjson解析数据后导致顺序改变问题

    转载来自:https://blog.csdn.net/long2010110/article/details/81537820 在开发过程中遇到一个问题,服务器经过排序返回后的字符串数据使用fastj ...

  3. Json解析数据导致顺序改变问题

    Json解析数据导致顺序改变问题 json解析的时候,通常顺序会发生改变,如果我们有保持原有顺序的需求的话可以通过如下方式 使用fastJson的Feature.OrderedField JSONOb ...

  4. 大数据之数据清洗之爬取数据后如何根据地名或者公司名获取经纬度信息-地址逆解析经纬度

    关于本文章说明: 本文章的想法来源于:爬了大量的数据后,想利用GIS技术把数据展示在地图上.但是爬的数据又没有经纬度坐标,就无法在地图上进行展示了,所以用了百度地图的正/逆地理编码. 计算机行业招聘智 ...

  5. 详解JSONObject.parseObject和JSONObject.fromObject——Web网络系列学习笔记

    一. 说明 com.alibaba.fastjson.JSONObject是经常会用到的JSON工具包,同样它的转换方法也会经常被我们使用,包括对象转成JSON串,JSON串转成java对象等,如果过 ...

  6. JSONObject.parseObject()

    java获取json中某个字段 import com.alibaba.fastjson.JSONObject; public class JsonTest {public static void ma ...

  7. 在线汇率转换,用json解析数据,支持偏好设置。

    默认启动Activity背景是一张图片,启动时后台加载汇率数据,加载成功后进入另一个与用户交互Activity 首先分析JsonParser代码 package com.example.zhaorun ...

  8. influxdb源码解析-数据写入细节

    前言 ~~  这是一个分析inlfuxdb源码的系列.在此之前,已经分析了数据的基本模型,以及写入流程.在上一章数据写入部分,我们分析的是数据写入的基本流程,怎么从一个http的请求解析数据,然后计算 ...

  9. 【Python爬虫学习笔记4】结合Xpath与lxml库解析数据

    在之前的学习中了解了如何使用爬虫向目标服务器发送请求并获取响应,而此后便是要对响应进行处理,这里的处理在爬虫中通常指的是数据解析,即将相应内容数据化以方便我们进行有效数据的提取.在此过程中,有许多解析 ...

最新文章

  1. [JS]题解 | #魔法数字#
  2. 用Python分析了20万场吃鸡数据,有不少有趣的发现
  3. LeetCode 179. 最大数(自定义谓词函数--Lambda表达式--排序)
  4. 郑杰 | 如何拿回我们自己的医疗数据?
  5. 【操作系统】上下文切换
  6. Interval(区间类问题)
  7. mysql表空间自增_Oracle 默认表空间问题及自增变量设置
  8. 从一个PHP数据生成 CSV 文件
  9. Qt软件开发-Qt编译zlib完成文件压缩解压(win10)
  10. 微信小程序中如何使用阿里云iconfont图标
  11. 通过TMS320F28335学习DSP的开发流程——28335的基础知识(1)
  12. H5支付、支付宝支付
  13. r语言调用python_如何在Rstudio中使用python 语言 (图文详解)
  14. Alsa是Linux高级音频接口(百度文库无下载券抄来的)
  15. 易语言单窗口单ip软件源码_游戏搬砖怎样换IP防封?有几种处理方法?
  16. 如何修复win7蓝牙服务器,处理Bluetooth外围设备驱动在win7中出错的修复方法
  17. 12帧跑步动画分解图_今天给大家分享一个跑步动画教程和注意事项!希望有所帮助!...
  18. UICollectionViewCell复用时修改子页面属性出现混乱的解决方法
  19. 【Unity3D基础2-11】Unity3D网格和材质
  20. 2022贵州省农村信用社员工招聘模拟题及答案

热门文章

  1. 计算机网绣维修,电脑绣花机常见的故障和维修都有哪些呢?
  2. HashMap源码解读(中篇)
  3. 第三周(CoreIDRAW课总结)
  4. 个人作业2-英语学习app案例分析
  5. 牵手《如果爱》,颜值ivvi开启品牌之路
  6. 关于C++的cannot bind non-const lvalue reference of type...问题
  7. 我的勇者服务器维护3月5日,我的勇者2021年3月5日周礼包兑换码
  8. 两个网口芯片接一个变压器_RJ45端口属性及与百兆网络变压器的连接方式
  9. 基础知识——电脑键盘快捷键
  10. 一文教你通过 hexo 搭建自己的个人博客以及配置主题