FastJSON是一個很好的java開源json工具類庫,相比其他同類的json類庫,它的速度的確是fast,最快!但是文檔做得不好,在應用前不得不親測一些功能。
實際上其他的json處理工具都和它差不多,api也有幾分相似。
一、JSON規範
JSON是一個標準規範,用於數據交互,規範的中文文檔如下:
參看規範,來對比JSON類庫處理結果。
二、fastjson的一些簡要說明
1、瞭解fastjson
Fastjson介紹
Fastjson是一個Java語言編寫的JSON處理器。
1、遵循
http://json.org標準,為其官方網站收錄的參考實現之一。
2、功能qiang打,支持JDK的各種類型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。
3、無依賴,不需要例外額外的jar,能夠直接跑在JDK上。
4、開源,使用Apache License 2.0協議開源。 http://code.alibabatech.com/wiki/display/FastJSON/Home
1、遵循
http://json.org標準,為其官方網站收錄的參考實現之一。
2、功能qiang打,支持JDK的各種類型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。
3、無依賴,不需要例外額外的jar,能夠直接跑在JDK上。
4、開源,使用Apache License 2.0協議開源。 http://code.alibabatech.com/wiki/display/FastJSON/Home
如果獲得Fastjson?
SVN: http://code.alibabatech.com/svn/fastjson/trunk/
WIKI: http://code.alibabatech.com/wiki/display/FastJSON/Home
Issue Tracking: http://code.alibabatech.com/jira/browse/FASTJSON
SVN: http://code.alibabatech.com/svn/fastjson/trunk/
WIKI: http://code.alibabatech.com/wiki/display/FastJSON/Home
Issue Tracking: http://code.alibabatech.com/jira/browse/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。
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>