一.JSON基础
定义:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
1.JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
2.JSON 是轻量级的文本数据交换格式
3.JSON 独立于语言 *
4.JSON 具有自我描述性,更易理解
5. JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。
语法:在 JS 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型:
**1.对象表示为键值对
2.数据由逗号分隔
3.花括号保存对象
4.方括号保存数组**
1>.对象转为JSON字符串
public class JsonTest {
@Test
public void test1(){
try {
Address addr = new Address();
addr.setHomeAddr("西安");
addr.setBusiAddr("北京");
addr.setSchoolAddr("西安");
addr.setPhone("18039489556");
Student st = new Student();
st.setName("张三");
st.setId(1111);
st.setSex('男');
st.setAge(18);
st.setAddress(addr);
Address addr1 = new Address();
addr1.setHomeAddr("成都");
addr1.setBusiAddr("杭州");
addr1.setSchoolAddr("成都");
addr1.setPhone("13992526211");
Student st1 = new Student();
st1.setName("李四");
st1.setId(2222);
st1.setSex('男');
st1.setAge(19);
st1.setAddress(addr1);
//创建学生对象
Student[] students = new Student[]{
st, st1};
//将对象通过映射转换为jsonvalue的json字符串
JSONValue jsonValue = JSONMapper.toJSON(students);<