我有一个像这样定义的嵌套 POJO 结构,
public class Employee {
private String id;
private Personal personal;
private Official official;
}
public class Personal {
private String fName;
private String lName;
private String address;
}
public class Official {
private boolean active;
private Salary salary;
}
public class Salary {
private double hourly;
private double monthly;
private double yearly;
}
我从带有 dot annotaion 的服务中获取更新,说明更改了什么值,例如,id change --> id=100
address change --> personal.address=123 Main Street
hourly salary change --> official.salary.hourly=100
这种 POJO 结构可以是 3-4 级深度。我需要查找这个传入的更改值并更新 POJO 中的相应值。最好的方法是什么?
最佳答案
如果您想创建允许您编辑字段的 Java 对象。您可以使用 public/default/protected 访问修饰符指定对象字段。这将使您能够获取和设置字段,例如 personal.address
或 official.salary.hours
由于不再封装对象并且欢迎任何调用方法来操作对象,因此这种方法通常不受欢迎。如果这些字段没有用 getter 和 setter 封装,你的对象就不再是 POJO
.public
提供从任何地方访问。default
提供从任何包的访问protected
提供从包或子类的访问。
public class Employee {
public String id;
public Personal personal;
public Official official;
}
public class Personal {
public String fName;
public String lName;
public String address;
}
关于基于点注释的Java嵌套POJO更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63643628/