数据交换格式之JSON

JSON是一种以键值对传递的数据格式,本文主要针对JSON数据格式在JavaScript以及Java语言中的具体应用,JSON相关介绍以及和其他数据格式的比较将在接下来的文章中给出。

一、JavaScript是JSON的主战场,JSON可以说是JavaScript对象文字符号的一个子集,由于JSON是JavaScript的一个子集,所以它可以自如的在JavaScript中使用。
在JSON中,有两种结构:对象和数组。
1.创建json对象

var jsonObject1 = {};
jsonObject1["name"] = 'stryang';
jsonObject1["sex"] = '男';
jsonObject1["age"] = 24;
//或者
var jsonObject2 = {"name":'stryang',"sex":'男',"age":24};

2.创建json数组

var jsonArray = [];
var jsonObject1 = {"name":'stryang',"sex":'男',"age":24};
var jsonObject2 = {"name":'stryang',"sex":'男',"age":24};
var jsonObject3 = {"name":'stryang',"sex":'男',"age":24};
var jsonObject4 = {"name":'stryang',"sex":'男',"age":24};

jsonArray.push(jsonObject1);
jsonArray.push(jsonObject2);
jsonArray.push(jsonObject3);
jsonArray.push(jsonObject4);

3.json字符串转json对象(使用json.js)

//json字符串
var jsonStr = '{"name":'stryang',"sex":'',"age":24}';
var jsonObject = jsonStr.parseJSON(); 
//或者
jsonObject = JSON.parse(jsonStr);

4.json对象转json字符串(使用json.js)

var jsonObject = {"name":'stryang',"sex":'男',"age":24};
var jsonStr = jsonObject .toJSONString(); 

二、Java中有许多操作JSON的开发包,这里以alibaba的fastjson.jar为例。
1.由java对象生成json字符串

//JSON.toJSONString(Object object)方法可以将任何一个java对象转为json字符串,其键值分别对应java对象的属性和属性的值
User stryang = new User("stryang", "男", 24);
String jsonStr = JSON.toJSONString(object);

2.将json字符串转为java对象

String jsonStr = "{\"name\":\"stryang\",\"sex\":\"男\",\"age\":24}";
User stryang = JSON.parseObject(jsonStr, User.class);

3.将json数组字符串转为json数组并解析

//json数组字符串
String jsonArrayStr = "[{\"name\":\"stryang\",\"sex\":\"男\",\"age\":24},{\"name\":\"stryang\",\"sex\":\"男\",\"age\":24},{\"name\":\"stryang\",\"sex\":\"男\",\"age\":24}]";
JSONArray jsonArray = JSON.parseArray(jsonArrayStr);
//解析数组里面json字符串
for(int i = 0;i < jsonArray.size();i ++){
	User user = JSON.parseObject(jsonArray.getString(i), User.class);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章