JSON数据格式
【1】json简介
JSON全称 JavaScript Object Notation
类似于JS中对象的创建的方法
JSON和XML一样,都是一种表示数据的格式
但是JSON比XML的存储和解析性能要高的多,JSON要比XML高个30%左右。
xml格式的数据:
<user>
<name>sunwukong</name>
<age>18</age>
<gender>男</gender>
</user>
json格式的数据 {"name":"孙悟空","age":8,"gender":男}
【2】JSON的格式
JSON字符串不方便阅读,但是传输性能好
XML方便阅读,但是传输性能差
JSON的格式和JS对象类型,但是要求属性名必须使用双引号。不能使用单引号,也不能不写引号!JSON对象中实际就是一组一组的键值对的结构,
键和值使用:连接,多个键值对之间使用逗号’,’分开,注意如果是最后一组键值对,则千万不要在加,.
{
“属性名1”:属性值1,
“属性名2”:属性值2,
“属性名3”:属性值3,
“属性名4”:属性值4
}
JSON运行属性值的类型:
1.字符串
2.数字
3.布尔
4.对象
5.数组
6.null
数组:
[属性1,属性2,属性3,属性4]
json文件格式:
【3】JS中使用JSON
JSON对象 –> JSON字符串
JSON.stringify(对象)
JSON字符串 –> JSON对象
JSON.parse(JSON字符串)
【4】JAVA中使用JSON
目前Java中用的比较多的JSON解析工具:
json-lib –> 使用麻烦,解析性能最差
Jackson –> 使用较麻烦,解析性能最好
Gson –> 使用简单,解析性能中能
- Gson是谷歌出的一款JSON解析工具,使用简单,且性能较好。
Java对象 --> JSON字符串
JSON字符串 --> Java对象
User user=new User(2, "zhangsan","1213234", "324");
Gson gson=new Gson();
String json = gson.toJson(user);
System.out.println(json);
//把Map转换成JSon字符串
Map<String, String> map=new HashMap<>();
map.put("username", "root");
map.put("age", "18");
String json2 = gson.toJson(map);
System.out.println(json2);
//将json字符串转换成对象
User fromJson = gson.fromJson(json, User.class);
System.out.println(fromJson);
注意:不要忘记导入Gson架包
AJAX中获取json文件后的转化