Json
简介:
JSON: JavaScript Object Notation JS对象简谱 , 是一种轻量级的数据交换格式.
对象格式:
例子:一本书(书名name、简介info)
{
“name”:“我是名字”,
“info”:“我是简介”
}
一个对象, 由一个大括号表示.
括号中描述对象的属性 . 通过键值对来描述对象的属性
(可以理解为, 大括号中, 包含的是一个个的键值对.)
格式:
键与值之间使用冒号连接, 多个键值对之间使用逗号分隔.
键值对的键应使用引号引住 (通常Java解析时, 键不使用引号会报错. 而JS能正确解析.)
键值对的值, 可以是JS中的任意类型的数据
数组格式
在JSON格式中可以与对象互相嵌套
[元素1,元素2…]
案例
{
“name”:“精神小伙”,
“age”:18,
“pengyou”:[“张三”,“李四”,“王二”,“麻子”,{
“name”:“精神小妹”,
“info”:“像匹野马一样狂奔在王者峡谷里”
}],
“heihei”:{
“name”:“大长刀”,
“length”:“40m”
}
}
Java与JSON关系?
1)将Java中的对象 快速的转换为 JSON格式的字符串.
2)将JSON格式的字符串, 转换为Java的对象.
接下来我们来操作吧!
为了下面的Java对象与Json数据的转换,在这里我先写了一个Book类用作举例(包含id,name和info属性,构造器
以及get/set方法)
Gson
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
1. 将对象转换为JSON字符串
转换JSON字符串的步骤:
1) 引入JAR包
2) 在需要转换JSON字符串的位置编写如下代码即可:
String json = new Gson().toJSON(要转换的对象);
2. 将JSON字符串转换为对象
1) 引入JAR包
2) 在需要转换Java对象的位置, 编写如下代码:
对象 = new Gson().fromJson(JSON字符串,对象类型.class);
Fastjson
Fastjson是由阿里巴巴工程师基于JAVA开发的一款JSON解析器和生成器,可用于将JAVA对象转换为其JSON表示形式,或者反过来。
将对象转换为JSON字符串
转换JSON字符串的步骤:
1) 引入JAR包
2) 在需要转换JSON字符串的位置编写如下代码即可:
String json=JSON.toJSONString(要转换的对象);
将JSON字符串转换为对象
1) 引入JAR包
2) 在需要转换Java对象的位置, 编写如下代码:
类型 对象名=JSON.parseObject(JSON字符串, 类型.class);
或
List<类型> list=JSON.parseArray(JSON字符串,类型.class);