JSONObject与Map的转换以及JSONArray与List的转换
alibaba.fastjson封装了对json对象的处理方法。
这里记录一下JSONObject与Map的转换以及JSONArray与List的转换。
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
JSONObject jsonResult =this.getJOSNObject(param);
JSONArray resultArray = jsonResult .getJSONArray("data");
if (resultArray.size()>0) {
for(int i=0;i<resultArray.size();i++){
JSONObject resultObject = resultArray.getJSONObject(i);
Map<String, Object> resultStr = JSONObject.parseObject(resultObject.toJSONString());
list.add(resultStr);
}
jsonResult是从接口方法中取到的JSONObject对象。resultArray是jsonResult中的数组。用上述方法处理,就可以将每一个JSONObject对象转换为Map对象,并最终将JSONArray转换为List。
JSONObject json11 = JSONObject.parseObject(JSON.toJSONString(map));/map转String
JSONObject jsonObject = JSON.parseObject(json);//String转json
//json转map
Map<String, String> jsonMap = JSONObject.toJavaObject(jsonObject, Map.class);
//String转map
Map<String, String> jsonMap1 = JSONObject.parseObject(json, Map.class);