JSON总结-持续更新补充
2021-07-09 18:06
标签:hashset .com str 字符串转换 hash com json-lib rgs des 优点:老牌,应用广泛 缺点:jar包依赖多、转换成bean存在不足(bean里面存在list集合,map等)、性能不足 依赖jar包: - commons-beanutils-1.8.0.jar - commons-collections-3.2.1.jar - commons-lang-2.5.jar - commons-logging-1.1.1.jar - ezmorph-1.0.6.jar - json-lib-2.4-jdk15.jar 优点:高性能,不需要额外的jar,可以直接跑在jdk上面,速度极致 缺点:bean转换为json时可能会存在错误(类型上面) 优点:无依赖,直接跑在jdk上,只要存在getter、setter方法就可以解析,神器! 缺点:必须在对象转换之前创建好对象的类型以及其成员,性能稍差 JsonlibUtil.java FastjsonUtil.java GsonUtil.java 网盘链接:http://pan.baidu.com/s/1c2mu1Ni 密码:72qh 更多内容请查看 高老四博客 JSON总结-持续更新补充 标签:hashset .com str 字符串转换 hash com json-lib rgs des 原文地址:http://www.cnblogs.com/Glorze/p/7092174.html基本的json格式
{
"name": "jobs",
"boolean": true,
"age": null,
"num": 88
}
json对象
{
"starcraft": {
"INC": "Blizzard",
"price": 60
}
}
json数组
{
"person": [
"jobs",
60
]
}
json对象数组
{
"array": [
{
"name": "jobs"
},
{
"name": "bill",
"age": 60
},
{
"product": "war3",
"type": "game",
"popular": true,
"price": 60
}
]
}
常见的JSON解析工具
json-lib的net.sf.json的json处理包
阿里巴巴官方出的fastjson处理包
谷歌官方出品的Gson
json-lib对json数据的处理
package com.glorze.json;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JsonlibUtil {
public static void main(String[] args) {
Set
fastjson对json数据的处理
package com.glorze.json;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
public class FastjsonUtil {
public static void main(String[] args) {
Set
Gson对json数据的处理
package com.glorze.json;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
public class GsonUtil {
public static void main(String[] args) {
Set
>(){}.getType());
String listJson = gson.toJson(bookList);
System.out.println("json转换成List:"+listJson);
}
}
附三个封装工具类
下载地址