我收到来自第三方服务的回复,如下所示:
{
"field1": "string",
"field2": "string",
"objectList": [
{
"object1": {
"field11": "string",
"field12": "string",
"field13": "string",
"field14": "string",
},
"object2": {
"field21": "string",
"field22": "string",
"field23": "string",
},
"object3": {
"field31": "string",
"field32": "string",
"field33": "string",
"field34": "string",
"field35": "string",
}
}
]
}
object1,object2和object3不是同一个类型,我只想从响应中获取object2。
我试过这种方法:
ResponseEntity<ResponseClass> response = restTemplate.exchange( uri, HttpMethod.POST, entity, ResponseClass.class );
ResponseClass 看起来像这样:
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class ResponseClass implements Serializable {
private static final long serialVersionUID = -4355652702566088304L;
@JsonProperty("field1")
private String field1;
@JsonProperty("field2")
private String field2;
@JsonProperty("objectList")
private List objectList;
我得到了完整的 objectList,所以我可以将它提取为 key value 对,如 objectList.get(0).get("object2") 或类似的东西。但我不确定是否有更好的解决方案。
任何人都可以就如何改进这一点或如何获得我想要的对象提供一些指导吗?