有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java创建只包含响应中某些元素的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中拥有所有的属性吗?因为有很多属性,我只需要很少的属性,不想有多余的代码吗


共 (1) 个答案

  1. # 1 楼答案

    我能够解决这个问题。我创建了一个空构造函数,它成功了。以前,我有一个只包含两个所需属性的构造函数