【Java】Java实现 JSON 的组装和解析
Java 中 JSON 的使用
类库选择
Java中并没有内置JSON的解析,因此使用JSON需要借助第三方类库。
下面是几个常用的 JSON 解析类库:
Gson
: 谷歌开发的 JSON 库,功能十分全面。
FastJson
: 阿里巴巴开发的 JSON 库,性能十分优秀。
Jackson
: 社区十分活跃且更新速度很快。
以下我们将基于 FastJson
讲解。
Maven配置
在 Maven 构建的项目中,在 pom.xml 文件中加入以下依赖即可。
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.47</version>
</dependency>
编码
从 Java 变量到 JSON 格式的编码过程如下:
public void testJson() {JSONObject object = new JSONObject();//stringobject.put("string","string");//intobject.put("int",2);//booleanobject.put("boolean",true);//arrayList<Integer> integers = Arrays.asList(1,2,3);object.put("list",integers);//nullobject.put("null",null);
System.out.println(object);// {"boolean":true,"string":"string","list":[1,2,3],"int":2}
}
解码
从 JSON 对象到 Java 变量的解码过程如下:
public void testJson2() {JSONObject object = JSONObject.parseObject("{\"boolean\":true,\"string\":\"string\",\"list\":[1,2,3],\"int\":2}");//stringString s = object.getString("string");System.out.println(s);//intint i = object.getIntValue("int");System.out.println(i);//booleanboolean b = object.getBooleanValue("boolean");System.out.println(b);//listList<Integer> integers = JSON.parseArray(object.getJSONArray("list").toJSONString(),Integer.class);integers.forEach(System.out::println);//nullSystem.out.println(object.getString("null"));
}
【Java】Java实现 JSON 的组装和解析相关推荐
- Java实现 JSON 的组装和解析
什么是JSON(JavaScript Object Notation) JSON和xml一样都是数据交换格式.JSON是轻量级的,相比xml占带宽小.效率高 JSON只有两种结构:对象和数组 /*JS ...
- java map转json字符串_Java-Gso-json字符串解析-php后台返回字段类型可能为字符串(/空字符串)或者对象的情况...
其实本来android前端定义的对象类型是对象,如果后台没有值的情况下,理论上给null,如果是数组给[]或者null都可以的.这样Gson再解析转换的时候就不会出问题!但是最近重构发现后台如果没有字 ...
- java代码中fastjson生成字符串和解析字符串的方法和javascript文件中字符串和json数组之间的转换方法...
1.java代码中fastjson生成字符串和解析字符串的方法 List<TemplateFull> templateFulls = new ArrayList<TemplateFu ...
- js解析json数组+java对象转json字符串
function checkoutUserlist(){ // js 解析json数组var statuslist = [{"isAvailabe":"1",& ...
- java json path_Java使用JSONPath解析JSON完整内容详解
JsonPath是一种简单的方法来提取给定JSON文档的部分内容. JsonPath有许多编程语言,如Javascript,Python和PHP,Java. JsonPath提供的json解析非常强大 ...
- Java XML转换为JSON XML解析 转换为JSON Java 实现JSON转换为XML json转xml
Java XML转换为JSON XML解析 转换为JSON Java 实现JSON转换为XML json转xml 一.转换代码 1.XML字符串转换为JSON /*** description: XM ...
- jsp java json解析,jsp中获取json字符串,并解析
JqueryDemo1 function showData() { var str='{ "name": "John" }';//json标准格式 var ob ...
- java 8583报文解析_ISO8583报文工具类(组装和解析报文) | 学步园
很久没来csdn了.现在的工作地点在银行,妈的,不让上网啊. 写写博客其实是对自己知识的总结,这么长时间了,也该写点东西了.接触银行的项目,避免不了 遇上8583报文.具体介绍就不细讲了,这个网上一大 ...
- java发送iso8583报文接口框架,ISO8583报文工具类(组装和解析报文)
package com.lsy.common.util; import java.io.FileInputStream; import java.io.UnsupportedEncodingExcep ...
最新文章
- 雇佣和留住开发人员,打造优秀的团队
- R3LIVE:一个实时鲁棒、带有RGB颜色信息的激光雷达-惯性-视觉紧耦合系统(香港大学)...
- 如何从网页上下载Flash?
- Javascript面向对象编程(二) 构造函数的继承
- 城轨的两类时钟系统均同步于_基于两台SDS3000示波器同步产生“8通道”示波器...
- 请说说你对标签语义化的理解?
- Unity运行时刻资源管理
- Matrix探究细谈
- mysql5.0 linux安装包,LINUX下MYSQL5.0的安装!
- MySQL Semisync
- [LeetCode] Rotate Array
- Linux chmod、fchmod函数
- 常用URL schemes ✨支付宝 、微信、腾讯、百度、网易、银行 、社交 、音频 、工具大集合
- html表格内数据填充颜色,点击数据,自动为整行表格填充颜色,再也不用担心看错数据了...
- 用计算机发送电子邮件,用英语解释一下发送电子邮件的过程 用计算机语言来说一下,大概400到500个英文单词...
- GSMA TAC核发及IMEI编码规则
- 选择计算机配件用户需求,买电脑都需要看什么?对电脑不太懂,配置什么的…...
- 对CS1.6游戏的分析及心得
- cae属于计算机技术吗,CAE、CAD、CAPP与CAM的区别——扫盲贴
- hdu 5435 A serious math problem 数位dp