廖雪峰Java14Java操作XML和JSON-2JSON-1Json介绍
JSON是一种类似JavaScript对象的数据表示格式
- JavaScript Object Notation
- 去除了JavaScript的执行语句
- 仅保留数据
JSON格式:
- 仅保留UTF-8编码
- 必须使用双引号
- 特殊字符用\转译 "abc\nxyz\tend"
JSON特点:
- 适合表示层次结构
- 格式简单、仅支持
* {..} 键值对
* [...] 数组
* String字符串
* Number数值(整数和浮点数)
* Boolean 布尔值
* null空值
{
"code": "0",
"data": {
"list": [{
"id": "9387",
"Person": "张三",
"patId": 10406240,
"unitPrice": 2088.5,
"marry": true,
"visitStatus": null
}],
"totalCount": "153"
},
"message": "操作成功"
}
浏览器直接支持JSON的读写。因为浏览器的JavaScript方法提供了JSON.parse()和JSON.stringify(),能够直接吧一个JSON字符串变为JavaScript对象或者把JavaScript对象序列化为JSON字符串,所以在开发web应用的时候,使用JSON作为数据传输,在浏览器端可以直接使用JavaScript读写JSON。
//JSON String to JavaScript Object
jsObj = JSON.parse(jsonStr);
//JavaScript object to JSON string
jsonStr = JSON.stringify(jsObj);
因为JSON天生适合JavaScript读写,所以REST API通常选择JSON作为数据传输格式
解析JSON的方法:
- JSR 353 API
- Jackson
- gson
- fastjson
总结:
JSON是轻量级的数据表示方式
- 格式简单
- 解析速度快
- 适合Web应用