json的使用

背景知识:
1.JSON是JavaScript Object Notation 的缩写,是JS提供的一种数据交换格式。
2.JSON对象本质上就是一个JS对象,但是这个对象比较特殊,它可以直接转换为字符串,在不同语言中进行传递,通过工具又可以转换为其他语言中的对象
操作json的工具:
首先解析JSON字符串我们需要导入第三方的工具,目前主流的解析JSON的工具大概有三种json-lib、jackson、gson
三种解析工具相比较json-lib的使用复杂,且效率较差。而Jackson和gson解析效率较高。
详解https://blog.csdn.net/qidasheng2012/article/details/82996405
工具的使用:
1.使用Goole的Gson
《1》JSON字符串转换为对象

import com.google.gson.Gson;

String json = "{\"name\":\"张三\",\"age\":18}";
Gson gson = new Gson();
//转换为集合
Map<String,Object> stuMap = gson.fromJson(json, Map.class);
//如果编写了相应的类也可以转换为指定对象
Student fromJson = gson.fromJson(json, Student.class);

《2》对象转换为JSON字符串

Student stu = new Student("李四", 23);
Gson gson = new Gson();
//{"name":"李四","age":23}
String json = gson.toJson(stu);
		
Map<String , Object> map = new HashMap<String, Object>();
map.put("name", "孙悟空");
map.put("age", 30);
//{"age":30,"name":"孙悟空"}
String json2 = gson.toJson(map);
		
List<Student> list = new ArrayList<Student>();
list.add(new Student("八戒", 18));
list.add(new Student("沙僧", 28));
list.add(new Student("唐僧", 38));
//[{"name":"八戒","age":18},{"name":"沙僧","age":28},{"name":"唐僧","age":38}]
String json3 = gson.toJson(list);	

2.使用fastJson操作json
《1》json字符串转json对象

import com.alibaba.fastjson.JSONObject;

  //创建json字符串(Java中json字符串需要转义)
  String json = "{\"result_message\": \"message\", \"result_code\": 2000}";
 
 //创建json对象
  JSONObject wangxiaoer = new JSONObject();
  wangxiaoer.put("result_message", "message");
  wangxiaoer.put("result_code", 2000);

  JSONObject jsonObject = new JSONObject();
  //解析为json对象
  JSONObject jb = jsonObject.parseObject(json);
 //获取对象中的属性值
   String result_message = (String)jb.get("result_message");
   int result_code = (int)jb.get("result_code");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值