Java开发中JSON库的选型比较-JSONObject.parseObject解析数据后如何保持顺序不变-《Java笔记》

admin 2025-10-19 03:15:16 编程 来源:ZONE.CI 全球网 0 阅读模式

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

解决方法:

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

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

方法二:配置有序对象

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

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

  1. JSONObject retObj = new JSONObject(true);

方法四:使用Gson解析

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

这样生成的json对象就与放入数据时保持一致了 :::tips 注意:引入的fastjson相关的jar包版本要高于1.2.3,因为Feature.OrderedField是从1.2.3开始的 :::

以太坊cppgolang区别 编程

以太坊cppgolang区别

以太坊是一种去中心化的开源平台,它采用智能合约技术,旨在构建和运行不受干扰的分布式应用程序。作为目前最受欢迎的区块链平台之一,以太坊提供了多种编程语言的支持,其
progolang 编程

progolang

Go语言(Golang)是由Google开发的一门静态类型编程语言。作为一名专业的Golang开发者,我深知这门语言的优势和特点。在本文中,我将介绍Golang
golangn个发送者 编程

golangn个发送者

Golang是一种开源的编程语言,由Google团队开发,旨在提高程序的并发性和简化软件开发过程。在Go语言中,有时需要向多个接收者发送信息。本文将介绍如何在G
golang技能图谱 编程

golang技能图谱

从互联网行业的快速发展到人工智能技术的日益成熟,各种编程语言也应运而生。而在这众多的编程语言中,Golang(即Go)作为一门强大且高效的开发语言备受关注。Go
评论:0   参与:  16