关于Json解析的一些小知识点:
jsonObject.getInt("id") : 根据id, 在json对象中得到对应的Value
jsonObject.optInt("id") : 根据id, 在json对象中得到对应的Value
注意:optXxx方法会在对应的key中的值不存在的时候返回一个空字符串或者返回你指定的默认值,但是getString方法会出现空指针异常的错误。
Gson框架技术:
- 1 将Json格式的字符串{}转换为Java对象:
fromJson(String json, Class<T> classOfT)
//解析Json数据
Gson gson = new Gson();
ShopInfo shopInfo = gson.fromJson(json,ShopInfo.class);
- 2 将json格式的字符串[]转换为Java对象的List
fromJson(String json, Type typeOfT)
//解析Json数据
Gson gson = new Gson();
List<ShopInfo> shops = gson.fromJson(json,new TypeToken<List<ShopInfo>>(){}.getType());
- 3 将Java对象转换为json字符串{}
String toJson(Object src)
//解析Java对象
Gson gson = new Gson();
String json = gson.toJson(shopInfo);
- 4 将Java数组转换为json字符串{}
String toJson(Object src)
//解析Java数组
Gson gson = new Gson();
String json = gson.toJson(shops);
FastJson框架技术:
- 1 将json格式的字符串{}转换为Java对象
parseObject(String json, Class<T> classOfT)
//解析数据
ShopInfo shopInfo = JSON.parseObject(json, ShopInfo.class);
- 2 将json格式的字符串[]转换为Java对象的List
List<T> parseArray(String json,Class<T> classOfT);
// 2.解析数据
List<ShopInfo> shopInfos = JSON.parseArray(json, ShopInfo.class);
- 3 将Java对象转换为json字符串{}
toJSONString(Object object)
// 2.解析成Json数据
String json = JSON.toJSONString(shopInfo);
- 4 将Java对象的List转换为json字符串[]
toJSONString(Object object)
// 2.解析数据
String json = JSON.toJSONString(shops);