JSON入門介紹以及fastjson應用

JSON簡介:

json是一種輕量級的數據交換格式。採用完全獨立於編程語言的文本格式來儲存和表示數據。簡潔和清晰的層次結構使得json成爲理想的數據交換語言,易於閱讀和編寫,同時也易於機器解析和生成,並有效提高網絡傳輸效率。json一般作用於前後端數據的交互,例如java和html前端的交換數據。是當今非常流行的前後端數據交換形式。

json用來表示 例如字符串,數字,數組,對象等,其中對象和數組是兩種比較常見而且特殊的類型。一般表現形式爲K-V對(鍵值對),數據由逗號分隔,由花括號保存json對象,例如:

{"name":"charles","age":"22"}

這是一個json對象。

方括號保存json數組,例如

[{"name":"tony","age":"22"},{"name":"jack","age":"23"},{"name":"joy","age":"24"}]

這是一個json對象數組。

例如在java中定義一個json字符串:

String strJson="{\"name\":\"charles\",\"age\":\"22\"}";

 

fastjson是一個性能很好的Java語言實現的JSON解和生成器,由阿里巴巴開發,是目前Java語言中最快的JSON庫,fastjson簡單易用,已被廣泛使用在協議交互,web網站,Android客戶端等多種應用場景。其主要特點是:快速,強大,零依賴。(可以去官網下載jar包)

 

fastjson的基本使用:

1.將對象轉化爲JSON字符串

2.將JSON串轉化爲對象

3.將集合轉化爲JSON字符串

4.將JSON字符串轉化爲集合

先定義一個基礎的pojo類

package com.csdn.charles.pojo;

public class Person {
	private String cardNum; 
	private String name; 
	private int age; 

	public String getCardNum() {
		return cardNum;
	}

	public void setCardNum(String cardNum) {
		this.cardNum = cardNum;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
}

fastjson基本使用Demo

package com.csdn.charles.fastjson;
import com.alibaba.fastjson.JSON;
import java.util.ArrayList;
public class FastJsonDemo {
	public static void main(String[] args) {

		//將對象轉換JSON字符串
		Person person = new Person();
		person.setCardNum("123456");
		person.setName("charles");
		person.setAge(22);
		System.out.println(JSON.toJSONString(person));

		//將JSON字符串轉換對象
		String strjson = "{cardNum : '23456' ,name : 'jhon', age : 66 }";
		// Person.class 固定格式 告訴JSON轉換成Person對象
		Person person1 = JSON.parseObject(strjson, Person.class);
		
		//將集合轉換JSON字符串
		Person person2 = new Person();
		person2.setCardNum("654321");
		person2.setName("jack");
		person2.setAge(23);
		
		ArrayList list = new ArrayList();
		list.add(person);
		list.add(person1);
		list.add(person2);
		System.out.println(JSON.toJSONString(list));

		//將JSON字符串轉集合
		String strjson2 = "[{cardNum : '112233' ,name : 'charles', age : 22 },{cardNum : '223344' ,name : 'john', age : 33 }]";
		ArrayList jsonarray = JSON.parseObject(strjson2, ArrayList.class);
		System.out.println(jsonarray.get(0));
	}
}

有了fastjson可以輕易的將一些數據轉化爲json格式,如上所示,前端就能使用AJAX或者axios技術並利用這種json類數據來展示給客戶,非常方便!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章