mysql 簡單表和索引
阿新 • • 發佈:2021-11-28
fastjson
說明:
-
測試包版本:fastjson-1.2.16.jar
-
JSON 是 fastjson 包中較大的父類
-
JSONObject 繼承了 JSON 類,並且實現了 Map 介面
初始化資料:
Map<String, Object> jsonMap = new HashMap<>(); jsonMap.put("id", "130"); jsonMap.put("name", "xz"); jsonMap.put("age", "23"); List<String> arrayList = new ArrayList<>(); arrayList.add("123"); arrayList.add("456"); arrayList.add("789"); jsonMap.put("list", arrayList);
1、Java轉JSON:
// Java轉JSON字串:可以使用JSON.toJSONString()或者JSONObject.toJSONString()
// ps:懶人就用JSON.toJSONString()吧,效果一樣
String jsonStr = JSON.toJSONString(jsonMap);
// Java轉物件:
Object jsonObject = JSON.toJSON(jsonMap);
2、JSON轉Java:
- JSON 與 JSONObject 都可以呼叫以下方法
1>parseObject() 方法
// JSON.parseObject()方法返回JSONObject資料,再.getObject():引數為鍵名, class物件 // JSONObject可以訪問Map集合的方法,因為它實現了Map介面 JSONObject parseObject = JSON.parseObject(jsonStr); Object list1 = parseObject.get("list"); List<String> list2 = parseObject.getObject("list", List.class); // list1等價於arrayList /** String id = parseObject.getString("id"); boolean booleanValue = parseObject.getBooleanValue(""); */
2>parse() 方法
// parse()方法返回Object型別資料,需要經過強轉後再進行取值
Map<String, Object> map = (Map<String, Object>) JSON.parse(jsonStr);
List list3 = (List) map.get("list");
3>parseArray() 方法
// parse()方法返回JSONArray型別資料 // JSONArray可以直接訪問List集合方法,因為它實現了List介面 String array = JSON.toJSONString(arrayList); JSONArray objects = JSON.parseArray(array); List<String> list = JSON.parseArray(array, String.class);
PS:JSON轉鍵值對型別:parseObject();JSON轉非鍵值對型別:parseArray()