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方法)

java中json字符串添加反斜杠 博客 java json对象添加键值对_json

Gson

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。

1. 将对象转换为JSON字符串

转换JSON字符串的步骤:

1) 引入JAR包

2) 在需要转换JSON字符串的位置编写如下代码即可:

String json = new Gson().toJSON(要转换的对象);

java中json字符串添加反斜杠 博客 java json对象添加键值对_JSON_02


java中json字符串添加反斜杠 博客 java json对象添加键值对_字符串_03


2. 将JSON字符串转换为对象

1) 引入JAR包

2) 在需要转换Java对象的位置, 编写如下代码:

对象 = new Gson().fromJson(JSON字符串,对象类型.class);

java中json字符串添加反斜杠 博客 java json对象添加键值对_JSON_04


java中json字符串添加反斜杠 博客 java json对象添加键值对_json_05

Fastjson

Fastjson是由阿里巴巴工程师基于JAVA开发的一款JSON解析器和生成器,可用于将JAVA对象转换为其JSON表示形式,或者反过来。

将对象转换为JSON字符串

转换JSON字符串的步骤:

1) 引入JAR包

2) 在需要转换JSON字符串的位置编写如下代码即可:

String json=JSON.toJSONString(要转换的对象);

java中json字符串添加反斜杠 博客 java json对象添加键值对_编程语言_06


java中json字符串添加反斜杠 博客 java json对象添加键值对_json_07


将JSON字符串转换为对象

1) 引入JAR包

2) 在需要转换Java对象的位置, 编写如下代码:

类型 对象名=JSON.parseObject(JSON字符串, 类型.class);

java中json字符串添加反斜杠 博客 java json对象添加键值对_字符串_08


java中json字符串添加反斜杠 博客 java json对象添加键值对_编程语言_09

List<类型> list=JSON.parseArray(JSON字符串,类型.class);

java中json字符串添加反斜杠 博客 java json对象添加键值对_编程语言_10


java中json字符串添加反斜杠 博客 java json对象添加键值对_字符串_11