【发布时间】:2021-09-20 00:17:36
【问题描述】:
我正在尝试创建一个 POJO 模型类。模型Person 有多个地址,例如physicalAddress 和mailingAddress。在 POJO 中有一个地址列表和多个 Address 类型的变量是否有意义?
地址
public class Address {
private String type; // this will be added if address will be used as list in Person Class
private String line1;
private String line2;
private String line3;
.
.
.
}
选项 1
public class Person {
private Address physicalAddress;
private Address mailingAddress;
}
选项 2
public class Person {
private List<Address> addresses; // in this case address object will have a variable called type
}
我应该选择选项 1 还是选项 2?我觉得我应该选择选项 1,因为获取和设置会很容易。
感谢您的帮助!
【问题讨论】:
-
我认为这在很大程度上取决于您的要求和应用程序的性质。除非您实际上可以使用包含 50 个地址的列表来做一些事情,否则您为什么要这样做?
-
我同意。最多 4 种地址类型。我想我会选择选项 1。感谢您的回复!
-
如果您打算跟踪一个人的所有地址的历史记录,那么拥有一个地址列表是有意义的,否则为每种类型维护一个地址就足够了。此外,您可能想要一些布尔标志
mailingAddressSameAsPhysical等。 -
如果您知道地址数量并且它不会增加,我会建议选项 1,否则如果地址数量未知并且将来可能会增加,请选择选项 2。
-
Software Engineering Stack Exchange 可能更适合这个问题。它可能会在此处以基于意见的方式关闭。
标签: java modeling pojo software-design