【发布时间】:2017-05-10 02:03:57
【问题描述】:
是否有任何理由不使用实体/模型的层次结构来创建帮助您保存表单搜索字段的 dto/form 对象?
这不是一个大系统,如果需要,这些方法将帮助我们在以后创建真正的 dto。
我们的模型是简单的 POJO,几乎包含任何逻辑,可能还有一些验证逻辑,但这对 DTO 也有效。
用所有字段创建一个新的 DTO 对象是没有意义的。
public class User {
private String name;
private String email;
private Date onboardingDate;
public User() {}
public User(String name, String email, Date onboardingDate) {
this.name = name;
this.email = email;
this.onboardingDate = onboardingDate;
}
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getEmail() { return email; }
public void setEmail(String email) { this.email = email; }
public Date getOnboardingDate() { return onboardingDate; }
public void setOnboardingDate(Date onboardingDate) { this.onboardingDate = onboardingDate; }
}
我的 DTO 类,我可以将它用于创建用途和搜索。
public class UserDTO extends User {
private Date fromDate;
private Date toDate;
public Date getFromDate() { return fromDate; }
public void setFromDate(Date fromDate) { this.fromDate = fromDate; }
public Date getToDate() { return toDate; }
public void setToDate(Date toDate) { this.toDate = toDate; }
public User convertToEntity() {
return new User(super.getName(), super.getName(), super.getOnboardingDate());
}
}
谢谢狐狸!
【问题讨论】:
标签: java jpa hierarchy pojo dto