创建仅包含来自响应的一些元素的POJO



我正在尝试使用pojo从JSON响应中读取。响应有许多属性,但我只需要很少的属性,我只创建了具有这些属性的POJO,但是当我试图读取它时。解析失败

JSON响应:

[
{
"attr_1":1,
"attr_2":2,
"attr_3":3,
"attr_4":4,
"attr_5":5,
},
{
"attr_1":10,
"attr_2":20,
"attr_3":30,
"attr_4":40,
"attr_5":50,
}
]

我的POJO:

@JsonIgnoreProperties(ignoreUnknown = true)
public class MyPOJO {
@JsonProperty("attr_2")
private int attr_2;
@JsonProperty("attr_4")
private int attr_4;
public int getattr_2() { return attr_2; }
public void setattr_2(int attr_2) { this.attr_2 = attr_2;} 
public int getattr_4() { return attr_4; }
public void setattr_4(int attr_4) { this.attr_4 = attr_4;} 
}

我只需要attr_2和attr_4,不需要其他的。

这是我试图读取响应的方式:

MyPOJO[] arr = response.readEntity(MyPOJO[].class);

,但在这一步失败。我们真的需要有所有的属性在我的POJO,因为有很多,我需要很少的属性,不想有多余的代码?

我能够解决这个问题。我创建了一个空的构造函数,它工作了。以前我有一个构造函数,只有两个需要的属性。

最新更新