我一直在努力寻找实现这一目标的最佳方法。假设我有两个对象,一个是用户对象,另一个是笔记对象。Note 对象将保存患者的便笺,并将存储创建便笺的人以及上次更新的人。什么是更好的选择:
选项 A - 两个对象,一个仅包含注释特定信息,另一个是此对象的扩展,其中包含患者/作者/更新者的用户对象:
public class Note {
private int noteId;
private int patientId;
private int authorId;
private int updatedById;
private String noteText;
private Date noteDate;
}
public class NoteExt extends Note {
private User patient;
private User author;
private User updater;
}
选项 B - 一个 Note 对象,其中包含患者、作者、更新者的用户类
public class Note {
private int noteId;
private User patient;
private User author;
private User updater;
private String noteText;
private Date noteDate;
}
选项 A 会使应用程序膨胀,其中包含大量用于附加对象/数据库调用的文件,但在获取项目列表时会加快处理速度。(在这种情况下使用扩展也是正确的吗?)
选项 B 意味着不用担心记住何时使用哪个对象,并且只有一个数据库函数,但是如果我正在获取用户创建的所有笔记的列表,则会重复数据。
有没有更好的选项C?