动态键值对的JSON到JAVA POJO

动态键值对的JSON到JAVA POJO,java,json,Java,Json,我必须创建以下JSON的POJO类,问题是键p_d具有动态名称的变量,如s_t、n_t、n_p等。真正的JSON很大,我只面临这一部分的问题,我共享了部分JSON。 我正在使用jackson进行解析 { "flag": true, "flag2": false, "r_no": [ { "room_type": 250067, "no_of_rooms": 1, "no_of_children": 1, "no_of_adult

我必须创建以下JSON的POJO类,问题是键p_d具有动态名称的变量,如s_t、n_t、n_p等。真正的JSON很大,我只面临这一部分的问题,我共享了部分JSON。 我正在使用jackson进行解析

{
  "flag": true,
  "flag2": false,
  "r_no": [
    {
      "room_type": 250067,
      "no_of_rooms": 1,
      "no_of_children": 1,
      "no_of_adults": 2,
      "description": "Executive Room, 1 King Bed, Non Smoking",
      "children_ages": [
        8
      ]
    },
    {
      "room_type": 250067,
      "no_of_rooms": 1,
      "no_of_children": 0,
      "no_of_adults": 2,
      "description": "Executive Room, 1 King Bed, Non Smoking"
    }
  ],
  "r_code": "abc",
  "r_key": "123",
  "p_d": {
    "s_t": [
      {
        "name": "xyz",
        "cur": "INR"
      },
      {
        "name": "xyz1",
        "cur": "INR"
      }
    ],
    "n_t": [
      {
        "name": "xyz2",
        "cur": "INR"
      }
    ],
    "n_p": [
      {
        "name": "xyz5",
        "cur": "INR"
      }
    ]
  },
  "cur": "INR"
}

对于动态关键点,请使用
地图

ObjectMapper mapper=new ObjectMapper();
Map parsed=mapper.readValue(json,
新类型引用(){});

您的试用码在哪里@Surajpublic类PD{@JsonProperty(“s_t”)private List sT=new ArrayList();@JsonProperty(“n_t”)private List nT=new ArrayList();@JsonProperty(“n_p”)private List nP=new ArrayList();@JsonIgnore private Map additionalProperties=new HashMap();setter getter}这里的变量名是静态的,但需要动态变量。请不要将您的代码放在注释编辑器中进行同样的操作,但JSON很大,我只分享了我面临的部分问题ObjectMapper mapper=new ObjectMapper();请尝试{responseDto=mapper.readValue(response,com.HSR.class);}catch(JsonGenerationException e){e.printStackTrace();}