Json to Map (JSON不能在AEM Component中直接使用)
JSON to Map
Code:
HashMap<String, Object> convertToMap(JSONObject object)
throws JSONException {
HashMap<String, Object> data = new HashMap<String, Object>();
Iterator<?> it = object.keys();
while (it.hasNext()) {
String key = String.valueOf(it.next());
Object value = object.get(key);
if (value instanceof JSONObject) {
data.put(key, convertToMap((JSONObject) value));
} else if (value instanceof JSONArray) {
JSONArray array = (JSONArray) value;
List<HashMap<String, Object>> mapList = new ArrayList<HashMap<String, Object>>();
for (int i = 0; i < array.length(); i++) {
HashMap<String, Object> map = convertToMap(array
.getJSONObject(i));
mapList.add(map);
}
data.put(key, mapList);
} else {
data.put(key, value);
}
}
return data;
}