JSON解析

2JSON

简介

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。

简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。

易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

语法

1.对象表示为键值对,数据由逗号分隔,花括号保存对象,方括号保存数组。

2json数据类型

字符串 "abc", "123"

数字 1 ,  1.21

对象 {"name" : "张三"}

数组 [1,2,3]

boolean truefalse

null null

3.常用对象:

{'name': "张三", "age": 18, "score":100}   => JAVA对象Student Teacher。反序列化

java对象=> JSON字符串 序列化。

4.常用数组

[{"name": "张三", "age": 18},{"name": "李四", "age": 16}]

5.组合使用

{

"name": "中国",

"provinces": [{

"name": "黑龙江",

"capital": "哈尔滨"

}, {

"name": "广东",

"capital": "广州"

}, {

"name": "湖南",

"capital": "长沙"

}]

}

JSON解析

fastJson

Java对象与JSON之间的相互转换((对象变成json字符串)序列化与(json字符串变成对象)反序列化操作)

1.字符串转对象

String json = "{name:"张三",age:"18"}";

Student s1 = JSONObject.parseObject(json, Student.class);

2.对象转字符串

Student s1 = new Student("张三",18);

String jsonString = JSONObject.toJSONString(s1);

3.map转字符串

Map<String, String> map = new HashMap<String, String>();

map.put("error", "1");

map.put("msg", "系统错误");

String jsonString = JSONObject.toJSONString(map);

4.字符串数组转成List集合

String json = "[{"age":18,"name":"张三"},{"age":17,"name":"李四"}]";

List<Student> list = JSONObject.parseArray(json, Student.class);

//异常出现之后处理方式

//。。。。 剩下的代码能够继续执行。

运行时异常

只有在运行时才有肯能会出现的异常。

NullPotionException

IndexOutOfBoundsException

ClassCaseException 

原文地址:https://www.cnblogs.com/zhiyu07/p/14287283.html