是否有一种模式可以在不复制域对象属性的情况下使用 DTO?
2022-09-02 04:51:16
我想在我的视图模型中使用DTO来代替我的域对象,但是我很难证明必须为每个域对象维护两组属性的维护开销。
我想知道是否有人已经实现或知道一种模式,其中域对象的属性与对象的操作分开,而不必维护两组属性。
我的一个想法是让我的域对象只是属性,并将操作作为子类附加:
public class Person{
private String firstName;
private String lastName;
public String getFirstName(){
return this.firstName;
}
public String setFirstName(string firstName){
this.firstName = firstName;
}
...
}
public class PersonActions extends Person{
public void save(){
...
}
public Person get(){
}
}
这种方式仍然感觉有点笨拙,因为如果我想要域对象的完整表示,我必须传递PersonAction类。