JSON解析教程
一、JSON介绍
简介:
JSON(JavaScript Object Notation): JS对象简谱 , 是一种轻量级的数据交换格式。
格式:
{
"键":"值",
"键":"值"
}
既一个对象,用一个大括号包起来,而括号中 描述对象的属性,通过键值对来描述该对象的属性
键 与 值之间使用冒号连接,各键值对之间用逗号分隔。
注:
键值对的键,应使用引号引住 (通常Java解析时, 键不使用引号会报错. 而JS能正确解
析)。 键值对的值, 可以是JS中的任意类型的数据
数组格式:
\ \ \ \ 在JSON格式中可以与对象互相嵌套
{
"键":"值",
"键":[元素1,元素2...,{数组元素1,数组元素2...}],
"键":"值"
}
JSON与JAVA之间的关系:
将Java中的对象快速的转换为JSON格式的字符串
将JSON格式的字符串,转换为Java的对象
二、常用的解析方法
1、GSON
Jar包下载:Github下载地址
- 将对象转换为字符串
转换JSON字符串的步骤:
1. 引入JAR包
2. 在需要转换JSON字符串的位置编写如下代码即可:
String json = new Gson().toJSON(要转换的对象);
案例:
Book b = BookDao.find();
String json = new Gson().toJson(b);
System.out.println(json);
- 将JSON字符串转换为对象
1. 引入JAR包
2. 在需要转换Java对象的位置, 编写如下代码:
对象 = new Gson().fromJson(JSON字符串,对象类型.class);
案例:
String json = "{\"id\":1,\"name\":\"书名\",\"info\":\"简介\",\"price\":198.0}";
Book book = new Gson().fromJson(json, Book.class);
System.out.println(book);
2、FastJson
Jar包下载:Github下载地址
- 将对象转换为字符串
转换JSON字符串的步骤:
1. 引入JAR包
2. 在需要转换JSON字符串的位置编写如下代码即可:
String json=JSON.toJSONString(要转换的对象);
案例:
Book b = BookDao.find();
String json=JSON.toJSONString(b);
System.out.println(json);
- 将JSON字符串转换为对象
1. 引入JAR包
2. 在需要转换Java对象的位置, 编写如下代码:
类型 对象名=JSON.parseObject(JSON字符串, 类型.class);
或
List<类型> list=JSON.parseArray(JSON字符串,类型.class);
案例:
String json = "{\"id\":1,\"name\":\"书名\",\"info\":\"简介\",\"price\":198.0}";
Book book = JSON.parseObject(json, Book.class);
System.out.println(book);