JSON学习
JSON简介
JSON(JavaScript Object Notation)是存储信息和交换文本信息的一种语法。java使用者通常用来将对象存储于文本中与他人进行通信。 本质上是将对象转化符合某种规则的字符串, 这种语法规则取名叫JSON。两以文本的形式传输给他人, 他人借由这个规则再转换为对象。它类似 XML,但 比 XML 更小、更快,更易解析。
JSON的格式
{
“name”: ”如何阅读一本书”,
“Info”: ” 一本教你如何阅读的书…”,
“page”:[“page 1”, “page 2”,”page3”].
“others”:{
“author”:”莫提默·J. 艾德勒”,
“price”:”42元”
}
}
- 一个对象, 由一个大括号表示,括号中描述对象的属性
- 通过键值对来描述对象的属性(可以理解为, 大括号中,
包含的是一个个的键值对) - 键与值之间使用冒号连接, 多个键值对之间使用逗号分隔。键值对的键应使用引号引住 (通常Java解析时,键不使用引号会报错. 而JS能正确解析)
- 键值对的值, 可以是JS中的任意类型的数据
JSON 解析
JSON 解析需要导入jar文件,通常使用的jar文件有两种一种是Gson,另一种是FastJson。
Gson 将对象转换为JSON字符串
String json = new Gson().toJSON(要转换的对象)
将JSON字符串转换为对象
对象 = new Gson().fromJson(JSON字符串,对象类型.class);
FastJson 将对象转换为JSON字符串
String json=JSON.toJSONString(要转换的对象);
将JSON字符串转换为对象
类型 对象名=JSON.parseObject(JSON字符串, 类型.class); 或
List<类型> list=JSON.parseArray(JSON字符串,类型.class);