Json
Json(JavaScriptObject Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。Json采用完全独立于语言的文本格式,而且很多语言都提供了对 Json的支持(包括 C,C++,C#,Java, JavaScript,Perl, Python等)。 这样就使得 Json成为理想的数据交换格式
Json 是一种轻量级的数据交换格式
轻量级指的是跟 xml 做比较
数据交换指的是客户端和服务器之间业务数据的传递格式
Json 在 JavaScript 的使用
Json 的定义和访问
// Json的定义
var JsonObj = {
"key1" : "value1",
"key2" : 666,
"key3" : ["111", 222],
"key4" : true,
"key5" : {
"key5_1" : "key5_1_value",
"key5_2" : 522
}
};
// Json的访问
var key1 = JsonObj.key1;
var key2 = JsonObj.key2;
var key3 = JsonObj.key3;
// 遍历数组
for (let i = 0; i < key3.length; i++) {
alert(key3[i]);
}
var key4 = JsonObj.key4;
var key5 = JsonObj.key5;
// key5 还是 Json 对象
var key51 = key5.key5_1;
var key52 = JsonObj.key5.key5_2;
Json 的两个方法
Json 的存在有两种形式
- 对象的形式存在,叫它 Json 对象
一般要操作 Json 中的数据的时候,需要 Json 对象的格式 - 字符串的形式存在,叫它 Json 字符串
一般我们要在客户端和服务器之间进行数据交换的时候,使用 Json 字符串
Json.stringify()
把 Json 对象转换成为 Json 字符串
Json.parse()
把 Json 字符串转换成为 Json 对象
// Json对象转字符串
var JsonObjStr = Json.stringify(JsonObj);
alert(JsonObjStr);
// Json字符串转Json对象
var parseStrJson = Json.parse(JsonObjStr);
alert(parseStrJson);
Json 在 Java 中的使用
JavaBean 和 Json 字符串相互转换
需要使用谷歌提供的 jar 包:Gson
// 原生 JavaBean 对象
Person personObj = new Person(1, "帅气的锋哥");
System.out.println(personObj);
// 使用 Gson 实现 JavaBean 和 Json 的相互转变
Gson gson = new Gson();
// 将对象转换成 Json 字符串
String personJsonStr = gson.toJson(personObj);
System.out.println(personJsonStr