deserialize inner JSON object

后端 未结 3 772
星月不相逢
星月不相逢 2020-12-19 23:39

I have a class POJO

Class Pojo {
String id;
String name;
//getter and setter
}

I have a json like

{
    \"response\" : [
          


        
3条回答
  •  一个人的身影
    2020-12-20 00:20

    You'll first need to get the array

    String jsonStr = "{\"response\" : [ { \"id\" : \"1a\",  \"name\" : \"foo\"},{ \"id\" : \"1b\",\"name\" : \"bar\"  } ]}";
    ObjectMapper mapper = new ObjectMapper();
    JsonNode node = mapper.readTree(jsonStr);
    ArrayNode arrayNode = (ArrayNode) node.get("response");
    System.out.println(arrayNode);
    List pojos = mapper.readValue(arrayNode.toString(), new TypeReference>() {});
    
    System.out.println(pojos);
    

    prints (with a toString())

    [{"id":"1a","name":"foo"},{"id":"1b","name":"bar"}] // the json array 
    [id = 1a, name = foo, id = 1b, name = bar] // the list contents
    

提交回复
热议问题