JSON(掌握)
JSON:JavaScript Object Notation JS 对象简谱 , 是一种轻量级的数据交换格式.
1、格式
1、对象格式
一个对象, 由一个大括号表示,括号中描述对象的属性,通过键值对来描述对象的属性 (可以理解为, 大括号中, 包含的是一个个的键值对)
格式:
键与值之间使用冒号连接, 多个键值对之间使用逗号分隔
键值对的键应使用引号引住 (通常Java解析时, 键不使用引号会报错, 而 JS 能正确解析)
键值对的值, 可以是 JS 中的任意类型的数据
{
"name":"张三",
"age":18
}
{
"name":"李四",
"age":18
}
2、数组格式
在 JSON 格式中可以与对象互相嵌套
格式:[元素1,元素2…]
["王二",{
"name":"张三","age":18},{
"name":"李四","age":18}]
2、作用
将 Java 中的对象快速的转换为 JSON 格式的字符串
将 JSON 格式的字符串,转换为 Java 的对象
3、解析
1、Gson
将对象转换为 JSON 字符串
转换JSON字符串的步骤:
1、引入 JAR 包
2、在需要转换 JSON 字符串的位置编写如下代码即可:
String json = new Gson().toJSON(要转换的对象);
//1. 创建Gson对象
Gson g = new Gson();
//2. 转换
Book b = new Book("100","金苹果","种植苹果真辛苦");
String s = g.toJson(b);
System.out.println(s);
Book b = new Book("100","金苹果","种植苹果真辛苦");
String s = new Gson().toJson(b);
System.out.println(s);
public class Book {
private String id;
private String name;
private String info;
......
}
将 JSON 字符串转换为对象
1、引入 JAR 包
2、在需要转换 JSON 字符串的位置编写如下代码即可:
对象 = new Gson().fromJson(JSON字符串,对象类型.class);
//1. 创建Gson对象
Gson g = new Gson();
//2. 转换 : {"id":"100","name":"金苹果","info":"种植苹果真辛苦"}
Book b = g.fromJson("{\"id\":\"100\",\"name\":\"金苹果\",\"info\":\"种植苹果真辛苦\"}", Book.class);
System.out.println(b.getId());
//1. 创建Gson对象
Gson g = new Gson();
//2. 转换 : {"id":"100","name":"金苹果","info":"种植苹果真辛苦"}
HashMap data = g.fromJson("{\"id\":\"100\",\"name\":\"金苹果\",\"info\":\"种植苹果真辛苦\"}", HashMap.class);
List page = (List) data.get("page");
System.out.println(page.get(1));
2、FastJson
将对象转换为 JSON 字符串
转换JSON字符串的步骤:
1、引入 JAR 包
2、在需要转换 JSON 字符串的位置编写如下代码即可:
String json = new JSON.toJSONString(要转换的对象);
Book book = new Book("1002","唐诗三百首","床前明月光,疑是地上霜。举头望明月,低头思故乡。");
//1. 转换
String json = JSON.toJSONString(book);