一、JSON (JavaScript Object Notation)
1、輕量級數據交換格式能夠替代XML的工作
2、數據格式比較簡單, 易於讀寫, 格式都是壓縮的, 占用帶寬小(簡潔、簡單、體積小)
3、易於解析這種語言, 客戶端JavaScript可以簡單的通過eval()進行JSON數據的讀取
4、服務器端的解析,跨語言(包括ActionScript, C, C#, ColdFusion,Java,JavaScript,Perl,PHP,Python,Ruby等語言服務器端語言)
5、各語言對JSON支持的特別好,自從Ajax的流行,JSON格式傳輸就更流行了
6、它是前端和后台交互用的。
7、它是鍵值對的
二、Java的轉JSON串的方式:
1、JAVA將對象轉成JSON串
2、通過的JSONObject生成JSON串
3、通過JSON字符串生成JSON串
4、代碼通過阿里的FASTJSON包實現
package com.zpark; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.junit.Test; /** * @author cosmo * @Title: JsonJunit * @ProjectName * @Description: * @date */ public class JsonJunit { @Test public void testJson(){ //1 JAVA將對象轉成JSON串 Student s = new Student(); s.setId("0001"); s.setName("lisi"); s.setAge(18); s.setMark(90.0); String json1 = JSON.toJSON(s).toString(); System.out.println(json1); //2 JSONObject生成JSON串 JSONObject jObject=new JSONObject(); jObject.put("username", "zhangsan"); jObject.put("sex", "男"); jObject.put("age", 28); jObject.put("email", "123456789@qq.com"); JSONArray jArray=new JSONArray(); jObject.put("studentList", jArray); String json2=jObject.toJSONString(); System.out.println(json2); //3 JSON字符串生成JSON串 JSONObject jObject2=new JSONObject(); //構造JSON字符串 String cardjsonStr1="{\"username\":\"xiaoming\",\"sex\":\"男\",\"age\":8}"; String cardjsonStr2="{\"username\":\"lihua\",\"sex\":\"女\",\"age\":18}"; JSON.parseObject(cardjsonStr1); JSONArray jArray2=new JSONArray(); //將JSON字符串轉成JSON對象,加入到JSONArray //注意一定要用JSON.parseObject()方法轉換成JSON對象,否則還是字符串,轉成JSON串的時候會帶雙引號 jArray2.add(JSON.parseObject(cardjsonStr1)); jArray2.add(JSON.parseObject(cardjsonStr2)); jObject2.put("studentList", jArray2); String json3=jObject2.toJSONString(); System.out.println(json3); } }