public static Map<String, Object> parseJsonToMap(String json){
JSONObject jsonObj = JSONObject.fromObject(json);
Map<String, Object> map = new HashMap<String, Object>();
for(Object k : jsonObj.keySet()){
Object v = jsonObj.get(k);
//如果内层还是数组的话,继续解析
if(v instanceof JSONArray){
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Iterator<JSONObject> it = ((JSONArray)v).iterator();
while(it.hasNext()){
JSONObject json2 = it.next();
list.add(parseJsonToMap(json2.toString()));
}
map.put(k.toString(), list);
} else {
map.put(k.toString(), v);
}
}
return map;
}
net.sf.json包转换方法,Jackson使用ObjectMapper.ReadValue方法