json(JavaScript Object Notation )指的是js对象简谱,它是一种轻量级数据交换格式。
所谓数据交换格式就是客户端与服务器,程序与程序之间在进行数据交流交换的一种格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。大概在2005-2006之后就取代了xml的地位,成为了主流的格式。
一本书书名简介:
java:
class Book{
private String name;
private String info;
get/set。。。
}
Book b = new Book();
b.setName(“果子树
”);
b.setInfo(“种果树
”);
js:
var b = new Object();
b.name = "果子树
";
b.info = "种果树
";
XML:
<book>
<name>篮球</name>
<info>打篮球</info>
</book>
JSON:
{
"name":"篮球",
"info":"打篮球"
}
一个对象
,
由一个大括号表示
.
括号中 描述对象的属性
.
通过键值对来描述对象的属性
(
可以理解为
,
大括号中
,
包含的是一个个的键值对
.)
格式
:
键与值之间使用冒号连接
,
多个键值对之间使用逗号分隔
.
键值对的键 应使用引号引住
(
通常
Java
解析时
,
键不使用引号会报错
.
而
JS
能正确解
析
.)
键值对的值
,
可以是
JS
中的任意类型的数据
数组格式
在
JSON
格式中可以与对象互相嵌套
[
元素
1,
元素
2...]
案列
{
"name":"张三",
"age":18,
"pengyou":["张三","李四","王二","麻子",{
"name":"托呢老师", "info":"世界顶峰的发型师"
}],
"heihei":{
"name":"大长刀",
"length":"40m"
}
}
java与json
将
Java
中的对象 快速的转换为
JSON
格式的字符串
.
将
JSON
格式的字符串
,
转换为
Java
的对象。
Gson(来自谷歌的工具)
将对象转换为json字符串
转换JSON
字符串的步骤
:
1.
引入
JAR
包
2.
在需要转换
JSON
字符串的位置编写如下代码即可
:
String
json
=
new
Gson
().
toJSON
(
要转换的对象
);
案列:
Book b
=
BookDao
.
find
();
String
json
=
new
Gson
().
toJson
(
b
);
System
.
out
.
println
(
json
);
将json字符串转换为对象
1.
引入
JAR
包
2.
在需要转换
Java
对象的位置
,
编写如下代码
:
对象
=
new
Gson
().
fromJson
(
JSON
字符串
,
对象类型
.
class
);
案列:
String
json
=
"{\"id\":1,\"name\":\"柑子
\",\"author\":\"
勤劳的人民 \",\"info\":\"嘿嘿
\",\"price\":198.0}"
;
Book book
=
new
Gson
().
fromJson
(
json
,
Book
.
class
);
System
.
out
.
println
(
book
);
FastJson(来自阿里的工具)
将对象转换为json字符串
转换
JSON
字符串的步骤
:
1.
引入
JAR
包
2.
在需要转换
JSON
字符串的位置编写如下代码即可
:
String
json
=
JSON
.
toJSONString
(
要转换的对象
);
案例
:
Book b
=
BookDao
.
find
();
String
json
=
JSON
.
toJSONString
(
b
);
System
.
out
.
println
(
json
);
将json字符串转换为对象
1.
引入
JAR
包
2.
在需要转换
Java
对象的位置
,
编写如下代码
:
类型 对象名
=
JSON
.
parseObject
(
JSON
字符串
,
类型
.
class
);
或
List
<
类型
>
list
=
JSON
.
parseArray
(
JSON
字符串
,
类型
.
class
);
案例
:
String
json
=
"{\"id\":1,\"name\":\"柑子
\",\"author\":\"
勤劳的人民\",\"info\":\"嘿嘿
\",\"price\":198.0}"
;
Book book
=
JSON
.
parseObject
(
json
,
Book
.
class
);
System
.
out
.
println
(
book
);