| 
                          
                
                                    
                    
                      
	| 發表者 | 
	討論內容 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:03 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]Fastjson API 中文版
 
		Fastjson API中文版由  路飛 創建, 最後一次修改  2016-12-11 Fastjson API中文版JSON這個類是fastjson API的入口,主要的功能都通過這個類提供。  序列化APIpackage com.alibaba.fastjson; public abstract class JSON {     // 將Java對像序列化為JSON字符串,支持各種各種Java基本類型和JavaBean     public static String toJSONString(Object object, SerializerFeature... features);     // 將Java對像序列化為JSON字符串,返回JSON字符串的utf-8 bytes     public static byte[] toJSONBytes(Object object, SerializerFeature... features);     // 將Java對像序列化為JSON字符串,寫入到Writer中     public static void writeJSONString(Writer writer,                                        Object object,                                        SerializerFeature... features);     // 將Java對像序列化為JSON字符串,按UTF-8編碼寫入到OutputStream中     public static final int writeJSONString(OutputStream os, //                                              Object object, //                                              SerializerFeature... features); }  JSON字符串反序列化APIpackage com.alibaba.fastjson; public abstract class JSON {     // 將JSON字符串反序列化為JavaBean     public static <T> T parseObject(String jsonStr,                                     Class<T> clazz,                                     Feature... features);     // 將JSON字符串反序列化為JavaBean     public static <T> T parseObject(byte[] jsonBytes,  // UTF-8格式的JSON字符串                                     Class<T> clazz,                                     Feature... features);     // 將JSON字符串反序列化為泛型類型的JavaBean     public static <T> T parseObject(String text,                                     TypeReference<T> type,                                     Feature... features);     // 將JSON字符串反序列為JSONObject     public static JSONObject parseObject(String text); }  Demo parse Treeimport com.alibaba.fastjson.*; JSONObject jsonObj = JSON.parseObject(jsonStr);  parse POJOimport com.alibaba.fastjson.JSON; Model model = JSON.parseObject(jsonStr, Model.class);  parse POJO Genericimport com.alibaba.fastjson.JSON; Type type = new TypeReference<List<Model>>() {}.getType(); List<Model> list = JSON.parseObject(jsonStr, type);  convert POJO to json stringimport com.alibaba.fastjson.JSON; Model model = ...; String jsonStr = JSON.toJSONString(model);  convert POJO to json bytesimport com.alibaba.fastjson.JSON; Model model = ...; byte[] jsonBytes = JSON.toJSONBytes(model);  write POJO as json string to OutputStreamimport com.alibaba.fastjson.JSON; Model model = ...; OutputStream os; JSON.writeJSONString(os, model);  write POJO as json string to Writerimport com.alibaba.fastjson.JSON; Model model = ...; Writer writer = ...; JSON.writeJSONString(writer, model);  原文出處:Fastjson API中文版_w3cschool 
	 
	 | 
 
	| 
	
	
	 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:10 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]fastJson API
 
		fastJson APIFastJSON是一個很好的java開源json工具類庫,相比其他同類的json類庫,它的速度的確是fast,最快!但是文檔做得不好,在應用前不得不親測一些功能。 實際上其他的json處理工具都和它差不多,api也有幾分相似。 
 
 一、JSON規範 JSON是一個標準規範,用於數據交互,規範的中文文檔如下: 參看規範,來對比JSON類庫處理結果。 二、fastjson的一些簡要說明 1、瞭解fastjson Fastjson介紹 2、主要的使用入口 Fastjson API入口類是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON類上的靜態方法直接完成。   public static finalObject  parse(String text);  // 把JSON文本parse為JSONObject或者JSONArray  public static finalJSONObject parseObject(String text);  //  把JSON文本parse成JSONObject  public static final<T> T parseObject(String text, Class<T> clazz);  //  把JSON文本parse為JavaBean  public static finalJSONArray parseArray(String text);  //  把JSON文本parse成JSONArray  public static final<T> List<T> parseArray(String text, Class<T> clazz);  //把JSON文本parse成JavaBean集合  public static final String toJSONString(Object object);  //  將JavaBean序列化為JSON文本  public static finalString toJSONString(Object object,  booleanprettyFormat);  //  將JavaBean序列化為帶格式的JSON文本  public static finalObject toJSON(Object javaObject); 將JavaBean轉換為JSONObject或者JSONArray。 3、有關類庫的一些說明 SerializeWriter:相當於StringBuffer JSONArray:相當於List<Object> JSONObject:相當於Map<String, Object> JSON反序列化沒有真正數組,本質類型都是List<Object>  原文出處:fastJson API - 灯塔的CSDN博客 - CSDN博客 
	 
	 | 
 
	| 
	
	
	 | 
 
| 
 
 
 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:16 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]FastJson 的使用
 
		簡介Fastjson是一個Java語言編寫的高性能功能完善的JSON庫。   高性能fastjson採用獨創的算法,將parse的速度提升到極致,超過所有json庫,包括曾經號稱最快的jackson。並且還超越了google的二進制協議protocol buf。   支持標準  功能強大 - 支持各種JDK類型。包括基本類型、JavaBean、Collection、Map、Enum、泛型等。
  - 支持循環引用
    無依賴  支持範圍廣 - 支持JDK 5、JDK 6、Android、阿里雲手機等環境。
    開源  測試充分 - fastjson有超過1500個testcase,每次構建都會跑一遍,豐富的測試場景保證了功能穩定。
    獲得fastjson  下載 http://code.alibabatech.com/mvn/releases/com/alibaba/fastjson/   maven如果你使用了Maven,maven repository配置如下:   <repository>   <id>opensesame</id>   <name>Alibaba OpenSource Repsoitory</name>   <url>http: //code.alibabatech.com/mvn/releases/</url>   <snapshots>   <enabled> false </enabled>   </snapshots>  </repository>  |  
 pom.xml文件中加入依賴依賴:   <dependency>   <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>   <version> 1.1 . 14 </version>  </dependency>  |  
   序列化一個JSON庫涉及的最基本功能就是序列化和反序列化。Fastjson支持java bean的直接序列化。你可以使用com.alibaba.fastjson.JSON這個類進行序列化和反序列化。   基本序列化序列化就是把JavaBean對像轉化成JSON格式的文本。   Object o = ...;  String text = JSON.toJSONString(o);  |  
 在這個例子中,調用JSON.toJSONString方法,把對像o轉化為JSON格式的文本。   使用單引號標準的JSON是使用雙引號的,javascript支持使用單引號格式的json文本,fastjson也支持這個特性,打開SerializerFeature.UseSingleQuotes這個特性就可以了了,例如:   Object o = ...;  String text = JSON.toJSONString(o, SerializerFeature.UseSingleQuotes);  |  
 fastjson序列化時可以選擇的SerializerFeature有十幾個,你可以按照自己的需要去選擇使用。   日期格式化fastjson直接支持日期類型數據的格式化,包括java.util.Date、java.sql.Date、java.sql.Timestamp、java.sql.Time。 缺省情況下,fastjson將Date類型序列化為long,這個使得序列化和反序列化的過程不會導致時區問題。如:   例如:   long  millis = 1324138987429L;  Date date = new  Date(millis);
   System.out.println(JSON.toJSONString(date));  |  
 輸出的結果是 fastjson還提供了基於格式化輸出的SerializerFeature,例如:   JSON.toJSONString(date, SerializerFeature.WriteDateUseDateFormat);  |  
 輸出的結果為: 你可以指定輸出日期的格式,比如修改為輸出毫秒:   JSON.toJSONStringWithDateFormat(date,  );  |  
 輸出的結果為:   使用WriteClassName特性fastjson支持序列化時寫入類型信息,從而使得反序列化時不至於類型信息丟失。例如:   Color color = Color.RED;  String text = JSON.toJSONString(color, SerializerFeature.WriteClassName);  System.out.println(text);  |  
 輸出結果:   {  :  ,  : 255 ,  : 0 ,  : 0 ,  : 255 }  |  
 由於序列化帶了類型信息,使得反序列化時能夠自動進行類型識別,例如:   String text = ...;   Color color = (Color) JSON.parse(text);  |  
   瀏覽器和設備兼容fastjson缺省的序列化內容,是對序列化結果緊湊做了優化配置,使得序列化之後長度更小,但是這種優化配置是對一些瀏覽器和設備不兼容的。比如說在iphone上兼容emoji(繪文字)。   JSON.toJSONString(o, SerializerFeature.BrowserCompatible);  |  
   循環引用很多場景中,我們需要序列化的對象中存在循環引用,在許多的json庫中,這會導致stackoverflow。在功能強大的fastjson中,你不需要擔心這個問題。例如:  
 A a = new  A();
  B b = new  B(a);  a.setB(b);  String text = JSON.toJSONString(a);   A a1 = JSON.parseObject(text, A. class );  Assert.assertTrue(a1 == a1.getB().getA());  |  
 引用 描述  |   | 上一級 |   |   | 當前對象,也就是自引用 |   |   | 根對像 |   |   | 基於路徑的引用,相當於 root.getChildren().get(0) |  
   public  class  User { 
  @JSONField (name=  )
   public  int  getId() { ... }  }  User user = ...;  JSON.toJSONString(user);   |  
   從json-lib中升級如果你已經使用了json-lib,並且痛恨他蝸牛般的速度和囉嗦的API,建議你升級為fastjson,fastjson可以完全兼容json-lib的序列化格式。   import  com.alibaba.fastjson.JSON;  import  com.alibaba.fastjson.serializer.JSONLibDataFormatSerializer;  import  com.alibaba.fastjson.serializer.JSONSerializerMap;  import
  com.alibaba.fastjson.serializer.SerializerFeature;    private  static  final  SerializeConfig config;  static  {   config = new  SerializeConfig();   config.put(java.util.Date. class , new  JSONLibDataFormatSerializer()); // 使用和json-lib兼容的日期輸出格式   config.put(java.sql.Date. class , new  JSONLibDataFormatSerializer()); // 使用和json-lib兼容的日期輸出格式  }    private  static  final  SerializerFeature[] features = { SerializerFeature.WriteMapNullValue, // 輸出空置字段   SerializerFeature.WriteNullListAsEmpty, // list字段如果為null,輸出為[],而不是null   SerializerFeature.WriteNullNumberAsZero, // 數值字段如果為null,輸出為0,而不是null   SerializerFeature.WriteNullBooleanAsFalse, // Boolean字段如果為null,輸出為false,而不是null   SerializerFeature.WriteNullStringAsEmpty    };    // 序列化為和JSON-LIB兼容的字符串  public  static  String toCompatibleJSONString(Object object) {   return  JSON.toJSONString(object, config, features);  }  |  
 通過上面代碼中的toCompatibleJSONString方法,你就可以實現完全兼容json-lib了。   反序列化反序列化就是把JSON格式的文本轉化為Java Bean對象。   指定Class信息反序列化  String text = ...;   Color color = JSON.parseObject(text, Color. class );  |  
   類型集合的反序列化這個接口類似於parseObject   String text = ...; // [{ ... }, { ... }]  List<User> users = JSON.parseArray(text, User. class );
   |  
   泛型的反序列化如果你需要返回一個帶泛型的對象,例如List<User>、Map<String, User>,你可以使用TypeReference來傳入類型信息。   String text = ...;   Map<String, User> userMap = JSON.parseObject(text, new  TypeReference<Map<String, User>>() {});  |  
   組合類型集合的反序列化比如在網絡協議中,經常會存在這樣的組合:   [{ /*header*/}, {/*body*/ }]  |  
 
 fastjson對這種結構的反序列化有專門支持。   String text = ...; // [{/* header */}, {/* body */}]  Type[] types = new  Type[] {Header. class , Body. class };  List<Object> list = JSON.parseArray(text, types);  Header header = (Header) list.get( 0 );  Body body = (Body) list.get( 1 );  |  
 如果你的JavaBean沒有缺省構造函數,可以使用@JSONCreator來指定構造函數   public  static  class  Entity {   private  final  int  id;   private  final  String name;   @JSONCreator   public  Entity( @JSONField (name =  ) int  id, @JSONField (name =  ) String name){   this .id = id;   this .name = name;   }   public  int  getId() { return  id; }   public  String getName() { return  name; }  }  |  
   把JSON文本反序列化為一個原型接口  public  static  interface  Bean {   int  getId();   void  setId( int  value);   String getName();   void  setName(String value);  }  String text =  ;  Bean bean = JSON.parseObject(text, Bean. class );  // 按接口調用  Assert.assertEquals( 123 , bean.getId());  Assert.assertEquals(  , bean.getName());  bean.setId( 234 );  Assert.assertEquals( 234 , bean.getId());                      出自:                    |  
  原文出處:  Json解析教程(四.FastJson 的使用) - - ITeye博客 
	 
	 | 
 
	| 
	
	
	 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:20 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]fastJson 在 java 後台轉換 json 格式數據探究
 
		fastJson在java後台轉換json格式數據探究(一) 2012年12月28日 13:44:46 長安散人 閱讀數:63213 什麼事 JSON? JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。 易於人閱讀和編寫。同時也易於機器解析和生成。 它基於 JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999 的一個子集。 JSON 採用完全獨立於語言的文本格式,但是也使用了類似於 C 語言家族的習慣(包括 C, C++, C#, Java, JavaScript, Perl, Python 等)。 這些特性使 JSON 成為理想的數據交換語言。 現在我們就來研究一下 fastJson 。 Fastjson是國內著名的電子商務互聯網公司阿里巴巴內部開發的用於 java 後台處理 json 格式數據的一個工具包,包括 「 序列化 」 和 「 反序列化 」 兩部分,它具備如下特徵: 1 ) .速度最快,測試表明, fastjson  具有極快的性能,超越任其他的 java json parser 。包括自稱最快的 jackson 。 2 ) .功能強大,完全支持 java bean 、集合、 Map 、日期、 Enum ,支持范型,支持自省。 3 ) .無依賴,能夠直接運行在 Java SE 5.0 以上版本 4 ) .支持 Android 。 5 ) .開源 (Apache 2.0) 這是 fastJson 的網址:  http://code.alibabatech.com/wiki/display/FastJSON/Overview 其中包含了 json 數據處理的教程, jar 下載地址, example 樣例等。  
   下面給出fastJson處理json數據格式的代碼樣例:   package fastJson.test; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.serializer.SerializerFeature; public class FastJsonTest {     /**      * 序列化      */     public void toJsonString()     {         User user = new User("testFastJson001", "maks", 105);         String text = JSON.toJSONString(user);         System.out.println("toJsonString()方法:text=" + text);         // 輸出結果:text={"age":105,"id":"testFastJson001","name":"maks"}     }     /**      * 反序列化為json對像      */     public void parseJsonObject()     {         String text = "{\"age\":105,\"id\":\"testFastJson001\",\"name\":\"maks\"}";         JSONObject json = JSON.parseObject(text);         System.out.println("parseJsonObject()方法:json==" + json);         // 輸出結果:json=={"age":105,"id":"testFastJson001","name":"maks"}     }     /**      * 反序列化為javaBean對像      */     public void parseBeanObject()     {         String text = "{\"age\":105,\"id\":\"testFastJson001\",\"name\":\"maks\"}";         User user = (User) JSON.parseObject(text, User.class);         System.out.println("parseBeanObject()方法:user==" + user.getId() + "," + user.getName() + "," + user.getAge());         // 輸出結果:user==testFastJson001,maks,105     }     /**      * 將javaBean轉化為json對像      */     public void bean2Json()     {         User user = new User("testFastJson001", "maks", 105);         JSONObject jsonObj = (JSONObject) JSON.toJSON(user);         System.out.println("bean2Json()方法:jsonObj==" + jsonObj);         // 輸出結果:jsonObj=={"age":105,"id":"testFastJson001","name":"maks"}     }     /**      * 全序列化 直接把java bean序列化為json文本之後,能夠按照原來的類型反序列化回來。支持全序列化,需要打開SerializerFeature.WriteClassName特性      */     public void parseJSONAndBeanEachother()     {         User user = new User("testFastJson001", "maks", 105);         SerializerFeature[] featureArr = { SerializerFeature.WriteClassName };         String text = JSON.toJSONString(user, featureArr);         System.out.println("parseJSONAndBeanEachother()方法:text==" + text);         // 輸出結果:text=={"@type":"fastJson.test.User","age":105,"id":"testFastJson001","name":"maks"}         User userObj = (User) JSON.parse(text);         System.out.println("parseJSONAndBeanEachother()方法:userObj==" + userObj.getId() + "," + userObj.getName() + "," + userObj.getAge());         // 輸出結果:userObj==testFastJson001,maks,105     }     public static void main(String[] args)     {         FastJsonTest test = new FastJsonTest();         // 序列化         test.toJsonString();         // 反序列化為json對像         test.parseJsonObject();         // 反序列化為javaBean對像         test.parseBeanObject();         // 將javaBean轉化為json對像         test.bean2Json();         // 全序列化         test.parseJSONAndBeanEachother();     } }
 
 控制台輸出結果:   parseJsonObject()方法:json=={"age":105,"id":"testFastJson001","name":"maks"} parseBeanObject()方法:user==testFastJson001,maks,105 bean2Json()方法:jsonObj=={"age":105,"id":"testFastJson001","name":"maks"} parseJSONAndBeanEachother()方法:text=={"@type":"fastJson.test.User","age":105,"id":"testFastJson001","name":"maks"} parseJSONAndBeanEachother()方法:userObj==testFastJson001,maks,105
 
 
 附:javaBean類User.java package fastJson.test; import java.io.Serializable; public class User implements Serializable { 	private static final long serialVersionUID = 1L; 	private String id; 	private String name; 	private int age; 	public User() { 		super(); 	} 	public User(String id, String name, int age) { 		super(); 		this.id = id; 		this.name = name; 		this.age = age; 	} 	public int getAge() { 		return age; 	} 	public void setAge(int age) { 		this.age = age; 	} 	public String getId() { 		return id; 	} 	public void setId(String id) { 		this.id = id; 	} 	public String getName() { 		return name; 	} 	public void setName(String name) { 		this.name = name; 	} }
 
  原文出處:fastJson在java后台转换json格式数据探究(一) - hu_shengyang的专栏 - CSDN博客 
	 
	 | 
 
	| 
	
	
	 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:23 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]阿里巴巴的 fastjson 使用示例
 
		Java編程:阿里巴巴的fastjson使用示例在pom.xml文件中添加dependency,如下: dependency>     groupId>     artifactId>     version> dependency> User類: class User {     private String name;     private Integer age;     private String sex;     toString(){         this.sex;     }     getName() {         return name;     }     setName(String name) {         this.name = name;     }     getAge() {         return age;     }     setAge(Integer age) {         this.age = age;     }     getSex() {         return sex;     }     setSex(String sex) {         this.sex = sex;     } }使用示例: main(String[] args) {     User user = new User();     user.setName();     user.setAge(20);     user.setSex();     String str = ;     /** 將JSON字符串轉換為JSON對像 **/     JSONObject json = JSONObject.parseObject(str);     System.out.println(json.get());     /** 將JSON字符串轉換為JavaBean對像 **/     user = JSONObject.parseObject(str, User.class);     System.out.println(user);     /** 將JavaBean對像轉換為JSON字符串 **/     String content = JSONObject.toJSONString(user);     System.out.println(content);     /** 將JavaBean對像轉換為JSONObject **/     json = (JSONObject)JSONObject.toJSON(user);     System.out.println(json.get()); } 原文出處: Java编程:阿里巴巴的fastjson使用示例 - 天将降大任于是人 - CSDN博客 
	 
	 | 
 
	| 
	
	
	 | 
 
	 冷日 (冷日) | 
	發表時間:2019/4/5 15:25 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]JAVA 中使用 alibaba fastjson 實現 JSONObject、Object、Json 字串的轉換
 
		JAVA中使用alibaba fastjson實現JSONObject、Object、Json字串的轉換Object轉JSON字串: String jsonStr = JSONObject.toJSONString(object);
 JSON字串轉JSONObject: JSONObject jsonObject = JSONObjcet.parseObject(jsonStr);
 JSON字串轉Object物件 T t = JSON.parseObject(jsonStr,T.class);
  原文出處:JAVA中使用alibaba fastjson實現JSONObject、Object、Json字串的轉換 - IT閱讀 
	 
	 | 
 
	| 
	
	
	 | 
 
| 
 
 
 | 
 
	 冷日 (冷日) | 
	發表時間:2019/6/27 17:14 | 
 
	
	
	- Webmaster
 
		  
	 
	 
	
		- 註冊日: 2008/2/19
 
		- 來自: 
 
		- 發表數: 15773
 
			 
	 | 
	
	
	- [轉貼]FastJson 中 JSONObject 用法及常用方法總結
 
		本文為博主原創,未經允許不得轉載: 最近一直有用到解析各種數據,主要是用FastJson進行數據解析,其中一個重要的類為JSONObject,今天有時間,所以進行總結一下: JSONobject是FastJson提供的對象,在api中是用一個私有的常量map進行封裝的,實際就是一個map,只不過FastJson對其進行了封裝, 添加了很多方便快捷的屬性方法。 final Map<String, Object> map;  在項目中添加maven依賴         <dependency>                 <groupId>com.alibaba</groupId>                 <artifactId>fastjson</artifactId>                 <version>1.2.48</version>             </dependency>   先來看下它有哪些常用方法,以及有什麼作用: 1.put(String key, Object value)方法,在JSONObject對像中設置鍵值對在,在進行設值得時候,key是唯一的,如果用相同的key不斷設值得時候,保留後面的值。 2.Object get(String key) :根據key值獲取JSONObject對像中對應的value值,獲取到的值是Object類型,需要手動轉化為需要的數據類型 3.int size():獲取JSONObject對像中鍵值對的數量 4.boolean isEmpty():判斷該JSONObject對象是否為空 5.containsKey(Object key):判斷是否有需要的key值 6.boolean containsValue(Object value):判斷是否有需要的value值 7.JSONObject getJSONObject(String key):如果JSONObjct對像中的value是一個JSONObject對象,即根據key獲取對應的JSONObject對像; 8.JSONArray getJSONArray(String key) :如果JSONObject對像中的value是一個JSONObject數組,既根據key獲取對應的JSONObject數組; 9.Object remove(Object key):根據key清除某一個鍵值對。 由於JSONObject是一個map,它還具有map特有的兩個方法: 10.Set<String> keySet() :獲取JSONObject中的key,並將其放入Set集合中 11.Set<Map.Entry<String, Object>> entrySet():在循環遍歷時使用,取得是鍵和值的映射關係,Entry就是Map接口中的內部接口 與String字符串轉換: 12.toJSONString() /toString():將JSONObject對像轉換為json的字符串   常用的方法主要為以上這些,下面列出使用這些方法的example:  main(String[] args) {         新建JSONObject對像         JSONObject object1 =  JSONObject();         1.在JSONObject對像中放入鍵值對         object1.put("name", "張三");         object1.put("name1", "張三1");         object1.put("name2", "張三2");         2.根據key獲取value         String name = (String) object1.get("name");         System.out.println(name);         3.獲取JSONObject中的鍵值對個數          object1.size();         System.out.println(size);         4.判斷是否為空          object1.isEmpty();         System.out.println(result);         5.是否包含對應的key值,包含返回true,不包含返回false         );         System.out.println(isContainsKeyResult);         6.是否包含對應的value值,包含返回true,不包含返回false         );         System.out.println(isContainsValueResult);         7.JSONObjct對像中的value是一個JSONObject對象,即根據key獲取對應的JSONObject對像;         JSONObject object2 =  JSONObject();         將jsonobject對像作為value進行設置         object2.put("student1", object1);         JSONObject student =object2.getJSONObject("student1");         System.out.println(student);         8.如果JSONObject對像中的value是一個JSONObject數組,既根據key獲取對應的JSONObject數組;         JSONObject objectArray =  JSONObject();         創建JSONArray數組         JSONArray jsonArray =  JSONArray();         在JSONArray數組設值:jsonArray.add(int index, Object value);         jsonArray.add(0, "this is a jsonArray value");         jsonArray.add(1, "another jsonArray value");         objectArray.put("testArray", jsonArray);         獲取JSONObject對像中的JSONArray數組         JSONArray jsonArray2 = objectArray.getJSONArray("testArray");         System.out.println(jsonArray2);         9.remove.根據key移除JSONObject對像中的某個鍵值對         object1.remove("name");         System.out.println(object1);         10.取得JSONObject對像中key的集合         Set<String> keySet= object1.keySet();          (String key : keySet) {             System.out.print("   "+key);         }         System.out.println();         11.取得JSONObject對像中的鍵和值的映射關係         Set<Map.Entry<String, Object>> entrySet = object1.entrySet();          entry : entrySet) {             System.out.println(entry);         }         12.轉換為json字符串         String str1 = object1.toJSONString();         System.out.println(str1);         String str2 =object1.toString();         System.out.println(str2);     } 運行以上程序的結果為:     原文出處:FastJson中JSONObject用法及常用方法总结 - 香吧香 - 博客园 
	 
	 | 
 
	| 
	
	
	 | 
 
 
 
 
 
                       |