阿里巴巴Json工具-Fastjson教程

首先咱們要了解JSON是什麼?javascript

JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於 ECMAScript (歐洲計算機協會制定的js規範)的一個子集,採用徹底獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成爲理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提高網絡傳輸效率。php

Fastjson是阿里巴巴公司開源的速度最快的Json和對象轉換工具,一個Java語言編寫的JSON處理器。java

主要特性有編程

1、遵循http://json.org標準,爲其官方網站收錄的參考實現之一。2、功能qiang打,支持JDK的各類類型,包括基本的JavaBean、Collection、MapDate、Enum、泛型。3、無依賴,不須要例外額外的jar,可以直接跑在JDK上。4、開源,使用Apache License 2.0協議開源。http://code.alibabatech.com/wiki/display/FastJSON/Home

Fastjson API入口類是com.alibaba.fastjson.JSON,經常使用的序列化操做均可以在JSON類上的靜態方法直接完成。json

// 把JSON文本parse爲JSONObject或者JSONArray public static final Object parse(String text) // 把JSON文本parse成JSONObjectpublic static final JSONObject parseObject(String text);    // 把JSON文本parse爲JavaBean public static final <T> T parseObject(String text, Class<T> clazz)// 把JSON文本parse成JSONArray public static final JSONArray parseArray(String text)//把JSON文本parse成JavaBean集合 public static final <T> List<T> parseArray(String text, Class<T> clazz)// 將JavaBean序列化爲JSON文本 public static final String toJSONString(Object object) // 將JavaBean序列化爲帶格式的JSON文本 public static final String toJSONString(Object object, boolean prettyFormat);//將JavaBean轉換爲JSONObject或者JSONArray。public static final Object toJSON(Object javaObject)
有關類庫的一些說明SerializeWriter:至關於StringBufferJSONArray:至關於List<Object>JSONObject:至關於Map<String, Object>

下面是FastJSON的一些使用方法:swift


將Json文本數據信息轉換爲JsonObject對象,經過K V的形式獲取值微信

String str = "{\"name\":\"亂敲代碼\"}";  //將JsonObject數據轉換爲Json  JSONObject object = JSON.parseObject(str);  //利用鍵值對的方式獲取到值  System.out.println(object.get("name"));  

將JSON文本轉換成實體類,注意屬性要對應
網絡

String s = "{\"id\":\"0375\",\"city\":\"上海\"}";  //一個簡單方便 的方法將Json文本信息轉換爲JsonObject對象的同時轉換爲JavaBean對象!Beanweibo = JSON.parseObject(s, Weibo.class);  System.out.println(bean.getId());  System.out.println(bean.getCity());  

將List轉換成JSON格式數據app

List<String> list = Lists.newArrayList();list.add("slm");list.add("亂敲代碼");String result = JSON.toJSONString(list);

將Map轉換成JSON格式數據編程語言

Map<String, Object> map = Maps.newHashMap(); map.put("1",123);map.put("slm","亂敲代碼");String result1 = JSON.toJSONString(map);

將Bean轉成Json格式數據

Bean bean = new Bean("1234""洛陽");  JSONObject json = (JSONObject) JSON.toJSON(bean);  System.out.println(json.get("id"));

將JSON數據轉成JSONArray格式數據

String s = "[{\"id\":\"0375\",\"city\":\"平頂山\"},{\"id\":\"0377\",\"city\":\"南陽\"}]";  //將JSON文本轉換爲JSONArray  JSONArray array = JSON.parseArray(s);  //這行必須寫:必須加上+"";否則會報出類型強轉異常!  String str = array.get(1)+"";  System.out.println(array.get(0));  JSONObject object = JSON.parseObject(str);  System.out.println(object.get("id")); 

經常使用的也就這麼多方法


 掃描二維碼關注公衆號 回覆 「SpringBoot」 獲取價值3999的學習資料



長按識別二維碼,瞭解更多


掃描二維碼加入技術交流羣!










本文分享自微信公衆號 - 亂敲代碼(lqcoder)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索