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 中拥有所有属性,因为有很多属性,而我需要很少的属性,不想有多余的代码?
解决方案
我能够解决这个问题。我创建了一个空的构造函数并且它起作用了。以前我有一个只有两个需要的属性的构造函数。
推荐阅读
- html - checking if value is "null"
- python - 你如何在 Seaborn 中为 kde 情节创造传奇?
- reactjs - 如何在哑组件中避免使用 ConnectedProps 的循环类型依赖
- app.yaml - “python37”运行时不支持python appengine Pipfile
- python - 如何创建一个循环,直到重复原始值?
- intellij-idea - IntelliJ IDEA 能否在配备 ARM 处理器(Apple Silicone)的 Mac 上工作
- swift - 如何快速从字符串中删除包含文本的行
- braintree - 通过 Braintree 的 Hosted Fields 集成,标记化是否会触发卡验证?如果是这样,我该如何防止验证攻击?
- mainframe - 大型机潜在恶意文件取证调查
- angular - 如何在不重新加载组件的情况下将更新的变量传递给另一个组件?