FastJSON是阿里巴巴内部开发的用于后台处理json格式数据的一个工具包,项目中基本使用这个工具包,如下举例FastJSON工具的常用方法:
- 将实体类转为json格式的字符串
JSON.toJSONString(Bean);
- 将实体转为json对象
JSONObject json = (JSONObject) JSON.toJSON(bean);
- 将json格式字符串反序列化为json对象
JSONObject json = JSON.parseObject(text);
- 反序列化为实体对象
Bean bean = (Bean) JSON.parseObject(text, Bean.class);
- 将map转为jsonObject
JSONObject obj = JSONObject.parseObject(JSON.toJSONString(map));
- 将jsonObject转为Map<String,Object>
Map<String, Object> map = JSONObject.toJavaObject(jsonObj, Map.class);
- 将json转为List对象数组
List<Bean> list = JSON.parseArray(json, Bean.class);
- 将List转为JSONArray
JSONArray array = JSONArray.parseArray(JSON.toJSONString(list));
- 将JSONArray转为List
List<T> list = array.toJavaList(T.class);
// 如果本事是数组格式的字符串,可以直接转换:
List<T> list = JSON.parseArray(str, T.class);
JSON数组形式字符串转换为List<Map<String, String>>的8种方法
- 利用JSONArray中的parse方法来解析json数组字符串
// 第一种
List<Map<String,String>> listObjectFir = (List<Map<String,String>>) JSONArray.parse(strArr);
for (Map<String, String) mapList : listobjectFir)
{
for (Map.Entry entry : mapList.entrySet())
{
System.out.println( entry.getKey() + " " + entry.getValue());
}
}
- 利用JSONArray中的parseObject方法并指定返回类型来解析json数组字符串
// 第二种
List<Map<String,String>> listObjectSec = JSONArray.parseObject(strArr,List.class);
for (Map<String,String> mapList : listObjectSec)
{
for (Map.Entry entry : mapList.entrySet())
{
System.out.println( entry.getKey() + " " + entry.getValue());
}
}
- 利用JSONArray中的parseArray方法来解析json数组字符串
// 第三种
JSONArray listObjectThir = JSONArray.parseArray(strArr);
for (Object mapList : listObjectThir)
{
for (Object entry : ((Map)mapList).entrySet()){
System.out.println(((Map.Entry)entry).getKey() + " " + ((Map.Entry)entry).getValue());
}
}
- 利用JSONArray中的parseArray方法并指定返回类型来解析json数组字符串
// 第四种
List listObjectFour = JSONArray.parseArray(strArr,Map.class);
for (Object mapList : listObjectFour)
{
for (Object entry : ((Map)mapList).entrySet())
{
System.out.println(((Map.Entry)entry).getKey() + " " +((Map.Entry)entry).getValue());
}
}
- 利用JSONObject中的parseArray方法来解析json数组字符串
// 第五种
JSONArray listObjectFifth = JSONObject.parseArray(strArr);
for (Object mapList : listObjectFifth)
{
for (Object entry : ((Map)mapList).entrySet())
{
System.out.println(((Map.Entry)entry).getKey() + " " +((Map.Entry)entry).getValue());
}
}
- 利用JSONObject中的parseArray方法并指定返回类型来解析json数组字符串
// 第六种
List listObjectSix = JSONObject.parseArray(strArr,Map.class);
for (Object mapList : listObjectSix)
{
for (Object entry : ((Map)mapList).entrySet())
{
System.out.println(((Map.Entry)entry).getKey() + " " +((Map.Entry)entry).getValue());
}
}
- 利用JSON中的parseArray方法来解析json数组字符串
// 第七种
JSONArray listObjectSeven = JSON.parseArray(strArr);
for (Object mapList : listObjectSeven)
{
for (Object entry : ((Map)mapList).entrySet())
{
System.out.println(((Map.Entry)entry).getKey() + " " +((Map.Entry)entry).getValue());
}
}
- 利用JSON中的parseArray方法并指定返回类型来解析json数组字符串
// 第八种
List listObjectEigh = JSONObject.parseArray(strArr,Map.class);
for (Object mapList : listObjectEigh)
{
for (Object entry : ((Map)mapList).entrySet())
{
System.out.println(((Map.Entry)entry).getKey() + " " +((Map.Entry)entry).getValue());
}
}
待补充….