真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

Json的詳細介紹以及fastjson使用教程

這篇文章主要介紹“Json的詳細介紹以及fastjson使用教程”,在日常操作中,相信很多人在Json的詳細介紹以及fastjson使用教程問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Json的詳細介紹以及fastjson使用教程”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

創(chuàng)新互聯(lián)建站成立以來不斷整合自身及行業(yè)資源、不斷突破觀念以使企業(yè)策略得到完善和成熟,建立了一套“以技術為基點,以客戶需求中心、市場為導向”的快速反應體系。對公司的主營項目,如中高端企業(yè)網站企劃 / 設計、行業(yè) / 企業(yè)門戶設計推廣、行業(yè)門戶平臺運營、成都app開發(fā)、手機網站開發(fā)、微信網站制作、軟件開發(fā)、棕樹數(shù)據中心等實行標準化操作,讓客戶可以直觀的預知到從創(chuàng)新互聯(lián)建站可以獲得的服務效果。

Json是一種輕量級的數(shù)據交換格式,采用一種“鍵:值”對的文本格式來存儲和表示數(shù)據,在系統(tǒng)交換數(shù)據過程中常常被使用,是一種理想的數(shù)據交換語言。在使用Java做Web開發(fā)時,不可避免的會遇到Json的使用。下面我們就簡單講一下Json的使用以及fastjson.jar包的使用。

一:JSON形式與語法

1.1:JSON對象

我們先來看以下數(shù)據:

{
	"ID": 1001,
	"name": "張三",
	"age": 24
}

第一個數(shù)據就是一個Json對象,觀察它的數(shù)據形式,可以得出以下語法:

1:數(shù)據在花括號中

2:數(shù)據以"鍵:值"對的形式出現(xiàn)(其中鍵多以字符串形式出現(xiàn),值可取字符串,數(shù)值,甚至其他json對象)

3:每兩個"鍵:值"對以逗號分隔(最后一個"鍵:值"對省略逗號)

遵守上面3點,便可以形成一個json對象。

1.2:JSON對象數(shù)組

接下來我們再看第二個數(shù)據,觀察它的數(shù)據形式,可以得出以下語法:

[
	{"ID": 1001, "name": "張三", "age": 24},
	{"ID": 1002, "name": "李四", "age": 25},
	{"ID": 1003, "name": "王五", "age": 22}

]

1:數(shù)據在方括號中(可理解為數(shù)組)

2:方括號中每個數(shù)據以json對象形式出現(xiàn)

3:每兩個數(shù)據以逗號分隔(最后一個無需逗號)

遵守上面3點,便可形成一個json對象數(shù)組(及一個數(shù)組中,存儲了多個json對象)

理解了上面兩種基本的形式,我們就可以得出其他的數(shù)據形式,例如下面這個:

{
	"部門名稱":"研發(fā)部",
	"部門成員":[
	{"ID": 1001, "name": "張三", "age": 24},
	{"ID": 1002, "name": "李四", "age": 25},
	{"ID": 1003, "name": "王五", "age": 22}],
	"部門位置":"xx樓21號"
}

這是上面兩個基本形式結合出來的一種變形,通過這種變形,使得數(shù)據的封裝具有很大的靈活性,能讓開發(fā)者自由的發(fā)揮想象力。

1.3:JSON字符串

JSON字符串也是在平時開發(fā)中使用較多的,json字符串應滿足以下條件:

1:它必須是一個字符串,由" "或者' '包裹數(shù)據,支持字符串的各種操作

2:里面的數(shù)據格式應該要滿足其中一個格式,可以是json對象,也可以是json對象數(shù)組或者是兩種基本形式的組合變形。

總結:json可以簡單的分為基本形式:json對象,json對象數(shù)組。兩種基本格式組合變形出其他的形式,但其本質還是json對象或者json對象數(shù)組中的一種。json對象或對象數(shù)組可以轉化為json字符串,使用于不同的場合。

注意點:在封裝json數(shù)據的時候,很容易出現(xiàn)錯誤,比如粗心的在最后一條數(shù)據的末尾加上了逗號等等,這里我提供一個在線驗證工具,方便大家驗證json數(shù)據格式的正確性

http://www.bejson.com/

二:fastjson介紹與使用

2.1:fastjson簡介與jar下載

fastjson.jar是阿里爸爸開發(fā)的一款專門用于Java開發(fā)的包,可以方便的實現(xiàn)json對象與JavaBean對象的轉換,實現(xiàn)JavaBean對象與json字符串的轉換,實現(xiàn)json對象與json字符串的轉換。除了這個fastjson以外,還有Google開發(fā)的Gson包,其他形式的如net.sf.json包,都可以實現(xiàn)json的轉換。方法名稱不同而已,最后的實現(xiàn)結果都是一樣的。

將json字符串轉化為json對象
在net.sf.json中是這么做的
JSONObject obj = new JSONObject().fromObject(jsonStr);//將json字符串轉換為json對象

在fastjson中是這么做的
JSONObject obj=JSON.parseObject(jsonStr);//將json字符串轉換為json對象

今天我們主要講fastjson的使用,首先應該在Java工程中導入對應的fastjson.jar包,

fastjson.jar包原始下載地址:https://github.com/alibaba/fastjson

點擊頁面中的download即可下載最新的包

Json的詳細介紹以及fastjson使用教程

至此,JSON類中的方法也講解的差不多了,下面給出Java實例來實現(xiàn)以上的各種轉換。

測試類:

package jsonTest;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;


public class MyJson {
	
	public static void main(String[] args) {
		
		List list=new ArrayList<>();
		Student student=new Student("bob",24);
		Student student12=new Student("lily", 23);
		list.add(student);
		list.add(student12);
		System.out.println("*******javaBean  to jsonString*******");
		String str1=JSON.toJSONString(student);
		System.out.println(str1);
		System.out.println(JSON.toJSONString(list));
		System.out.println();
		
		System.out.println("******jsonString to javaBean*******");
		//Student stu1=JSON.parseObject(str1,new TypeReference(){});
		Student stu1=JSON.parseObject(str1,Student.class);
		System.out.println(stu1);
		System.out.println();
		
		System.out.println("******javaBean to jsonObject******");
		JSONObject jsonObject1=(JSONObject)JSON.toJSON(student);
		System.out.println(jsonObject1.getString("name"));
		System.out.println();
		
		System.out.println("******jsonObject to javaBean******");
		Student student2=JSON.toJavaObject(jsonObject1, Student.class);
		System.out.println(student2);
		System.out.println();
		
		System.out.println("*******javaBean to jsonArray******");
		List stulist=new ArrayList<>();
		for(int i=0;i<5;i++){
			stulist.add(new Student("student"+i, i));
			
		}
		JSONArray jsonArrays=(JSONArray)JSON.toJSON(stulist);
		for(int i=0;i myList=new ArrayList<>();
		for(int i=0;i

測試類對應的javabean類:

package jsonTest;

public class Student {
	
	private String name;
	private int age;
	
	public Student() {
		// TODO Auto-generated constructor stub
	}
	
	public Student(String name,int age){
		this.name=name;
		this.age=age;
	}
	
	public void setName(String name){
		this.name=name;
		
	}
	
	public String getName(){
		return name;
	}
	
	public void setAge(int age){
		this.age=age;
	}
	
	public int getAge(){
		return age;
	}
	
	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return "student [name="+name+">

到此,關于“Json的詳細介紹以及fastjson使用教程”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
當前題目:Json的詳細介紹以及fastjson使用教程
文章路徑:http://weahome.cn/article/posggp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部