1. 程式人生 > >fastjson 中 JSONArray 與 List 相互的轉換

fastjson 中 JSONArray 與 List 相互的轉換

一、模擬業務場景

REST 開發中,前後臺傳輸的是JSON資料,因此在後臺寫好介面後,需要進行Mock測試,這其中難免會遇到解析JSON資料。
假設後臺返回資料如下所示:

{"code":200,
 "result":{
     "create_time":1533802750000,
     "teaching_case":[
         {"case_name":"語文",
          "teaching_case":"語文第一章",
          "case_id":712,
          "creator_id":1
          },
          {"case_name
":"數學", "teaching_case":"數學第一章", "case_id":713,"creator_id":11 } ]
}
, "message":null}

二、fastjson 的具體使用

  • . List 轉 JSONArray
 // 通過JSONPath獲取其中資料,也可以說自己生成的List
 List<JSONObject> caseList =  JsonPath.read(resStr, "$.result.case");
 // 轉換為JSONArray
 JSONArray cases = JSONArray.parseArray(JSON
.toJSONString(caseList));
  • . JSONArray 轉 List
JSONArray array = new JSONArray();
List<T> list = JSONObject.parseArray(array.toJSONString(), T.class);
  • . String 轉 List
String str = "";
List<T> list = JSONObject.parseArray(str, T.class);