JSONObject
JSONObject jsonObject = new JSONObject(strJson);
JSONArray jsonArray = jsonObject.getJSONArray("data");
{} Jsonstr bean bean1....
[]
大括号{} Gson gson = new Gson(); bean b1 = gson.fromJson(Jsonstr,bean.class)
中括号[]: Gson gson = new Gson();
List<bean> list = gson.fromJson(jsonString, new TypeToken<List<bean.class>>() {}.getType());
Gson:
使用泛型擷取javaBean(核心函數)
(1),對象類型資料 public static <T> T getPerson(String jsonString, Class<T> cls) {
T t = null;
try {
Gson gson = new Gson();
t = gson.fromJson(jsonString, cls);
} catch (Exception e) {
// TODO: handle exception
}
return t;
}
(2),集合類型資料
public static <T> List<T> getPersons(String jsonString, Class<T> cls) {
List<T> list = new ArrayList<T>();
try {
Gson gson = new Gson();
list = gson.fromJson(jsonString, new TypeToken<List<cls>>() {
}.getType());
} catch (Exception e) {
}
return list;
} (3),集合中含map類型資料
public static List<Map<String, Object>> listKeyMaps(String jsonString) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
try {
Gson gson = new Gson();
list = gson.fromJson(jsonString,
new TypeToken<List<Map<String, Object>>>() {
}.getType());
} catch (Exception e) {
// TODO: handle exception
}
return list;
}
eg:
public static Mode getJson2(String json){
Gson gson = new Gson();
Mode mode = gson.fromJson(json, Mode.class);
return mode;
}
FastJson:
(1),集合類型資料 List<T> datas = JSON.parseArray(str,T.class):解析一個數組 {jsonArray} [,,,,,,] (2),對象類型資料 T t = JSON.parseObject(str,T.class):解析一個對象 {jsonObject} {}
FastJson對象的知識點:
fastjson 是一個性能極好的用 Java 語言實作的 JSON 解析器和生成器,來自 阿裡巴巴的工程師開發。
主要特點:
- 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)
- 強大(支援普通JDK類包括任意Java Bean Class、Collection、Map、Date或enum)
- 零依賴(沒有依賴其它任何類庫除了JDK)
一 、生成Json: JavaBean、List<JavaBean>、List<String>、List<Map<String,Object>>
- String jsonString = JSON.toJSONString(obj);
二、解析Json: (1)JavaBean Class class= JSON.parseObject(jsonString, Class.class); (2)List<JavaBean List<Class> class=JSON.parseArray((jsonString, Class.class); (3)List<String> List<String> listString = JSON.parseArray(jsonString, String.class); (4)List< Map<String,Object> > List<Map<String, Object>> listMap = JSON.parseObject(jsonString, new TypeReference<List<Map<String,Object>>>(){});
轉載于:https://www.cnblogs.com/muyuge/p/6152281.html