根据给定的json创建地图

时间:2019-01-21 10:36:58

标签: java java-ee

JSON

{
 "type": {
   "type1": {
     "sub1": [
        "sub1A": {
        }
     ]
   }
 }
"type2": {
   "type1": {
     "sub1": [
        "sub1A": {
        }
     ]
   }
 }

}

我有这样的Json,但我没有获得如何为此创建地图的方法,

Map<String, Object> requestMap = new HashMap<>();
requestMap.get("type"); 

内部类型再次创建包含子数据的地图。

2 个答案:

答案 0 :(得分:0)

我不完全理解您的问题。但是,从您的陈述来看,如果您尝试将JSON数据提取到您的类中并且JSON数据具有递归映射,即一个对象在其主体下包含自己。然后,我认为您不需要HashMap将此json映射到您的类中。您可以将单个实体与自身类型的字段(如员工-经理关系)一起使用。例如,

class Type {
  private Type type;
  private String otherField;
  // constructors, setters, getters
}

现在,您可以使用递归函数从类型读取值。

答案 1 :(得分:-1)

根据您分享的内容,您可以使用:

Map <String, Map<String, Map<String, Set<Map<String, String>>>>>

或者要获取有关使用json对象的更多详细信息,您可以查看:Query a JSONObject in java