淘先锋技术网

首页 1 2 3 4 5 6 7

Java中,使用Json来处理数据十分常见。在处理数据的时候,有时候需要将Json转换为Map。接下来就来介绍一下如何使用Java将Json转为Map。

public static Mapjson2Map(String jsonString) {
Mapmap = new HashMap();
JSONObject obj = JSON.parseObject(jsonString);
for (String key : obj.keySet()) {
Object value = obj.get(key);
if (value instanceof JSONArray)
map.put(key, json2List(((JSONArray) value).toJSONString()));
else if (value instanceof JSONObject)
map.put(key, json2Map(((JSONObject) value).toJSONString()));
else
map.put(key, value);
}
return map;
}

如上代码所示,在转换的过程中,对Json中的每一个键值对进行递归处理,将值转为相应的Java数据结构赋值给Map中对应的键。最终,返回一个Map对象,该对象中包含了Json中所有的键值对。

当然,代码中要使用Json的库,如本例中采用的阿里巴巴的fastjson库。在项目中,需要先引入该库。

总之,使用Java将Json转为Map虽然会有些复杂,但是却是经常会遇到的事情。熟练掌握此项技能对于处理数据十分重要。