1.JSON換實體類T
1 //json是JSONObject類型,將json轉成實體類T 2 T tt = JSONObject.parseObject(json.toJSONString(), T.class);
2.將json某字段轉成list
1 //先轉成JSONArray,再轉成list<T> 2 JSONArray jsonArray = json.getJSONArray("listKey"); 3 List<T> tList = (List<T>) JSONArray.parseArray(jsonArray .toString(), T.class);
3.將json轉成map
1 //獲取傳過來的map 2 JSONObject paramsJson=***; 3 Map<String, String> params = JSONObject.parseObject(paramsJson.toJSONString(), new TypeReference<Map<String, String>>() {});
Pom文件依賴
<properties>
<fastjson.version>1.2.47</fastjson.version>
</properties>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
FastJson被稱為目前Java語言中最快的JSON庫。
主要特點(參照W3Cschool):
- 快速FAST (比其它任何基於Java的解析器和生成器更快,包括jackson)
- 強大(支持普通JDK類包括任意Java Bean Class、Collection、Map、Date或enum)
- 零依賴(沒有依賴其它任何類庫除了JDK)
功能:
- 將Java對象轉換為Json字符串 String json字符串 = JSON.toJSONString(Java對象/對象數組);
- 將Json字符串轉換為Java對象 Java對象/Java對象列表 = JSON.parseObject(字符串)