从 key=>value 数组生成的 json 创建 POJO

Create POJO from json generated by key=>value Array

我想从这样的 json 创建一个 pojo

{
        "1": [
            {
                "idmapel": 1,
                "label": "Fisika"
            },
            {
                "idmapel": 2,
                "label": "Kimia"
            },
            {
                "idmapel": 3,
                "label": "Biologi"
            },
            {
                "idmapel": 4,
                "label": "Matematika"
            },
        ],
  "2":[
    {
        "idmapel": 1,
        "label": "Fisika"
    }
  ]
}

当我从 http://www.jsonschema2pojo.org/ 生成时,它创建了一个 1 和 2 class,但想象一下如果我有超过 2 个键。我希望能够通过这样的方式访问元素 ObjectClass::getList(1)ObjectClass::getList(2)

您可以使用 Map 来做到这一点。

Map<String, List<Pojo>> map = deserialize(jsonSring);

其中 Pojo 是具有字段 idmapellabel 的 class,deserialize 是一种将 json 反序列化为对象,jsonString 是要反序列化的 json 字符串值。然后您可以使用键访问列表

List<Pojo> list1 = map.get("1");
List<Pojo> list2 = map.get("2");