JSON学习
1 JSON入门
1.1 介绍
- JSON(JavaScript Object Notation):JS对象符号,是一种轻量级的书交换格式(相对比于xml)。
- 数据交换一般为客户端和服务端之间进行数据交换
1.2 数据格式
1 | var json = { |
- 特点:
- json是一个对象,用
{}
来包裹数据 - json的数据,存储形式类似key-value形式
- json的key值要用
""
括起来 - json的value值支持数字、字符串、布尔型、json对象
- json数据之间用
,
进行隔开
- json是一个对象,用
1.3 数据获取
- 以上面的json为例
1
2
3
4
5
6
7
8
9
10// 获取单个值
var key = json.key;
// 获取数组
var arr = json.arr;
var arrValue = json.arr[0];
// 获取对象
var obj = json.obj;
var objValue = json.obj.key;
2 JS JSON处理
1 | // 将json对象格式化为json字符串 |
- json对象:用于js数据处理
- json字符串:用于客户端与服务端进行数据交互
3 Java JSON处理
- JSON处理的jar有很多,案例演示的是谷歌的json处理jar包
- (1)依赖
1
2
3
4
5
6<!-- 谷歌json处理 -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.9.0</version>
</dependency>
- (2)方法
1
2
3
4
5
6
7
8
9
10
11
12
13Gson gson = new Gson();
// '对象/List/Map'转json字符串
gson.toJson(对象/List/Map);
// json字符串转'对象'
gson.fromJson(json字符串, 类.class);
// json字符串转'List'
gson.fromJson(json字符串, new TypeToken<List<类>>(){}.getType());
// json字符串转'Map'
gson.fromJson(json字符串, new TypeToken<Map<类1, 类2>>(){}.getType());