Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 假设表的持久域模型和DTO在存储库中,那么在数据库中创建表的DTO对应项可以吗?_Java_C#_Domain Driven Design_Repository Pattern - Fatal编程技术网

Java 假设表的持久域模型和DTO在存储库中,那么在数据库中创建表的DTO对应项可以吗?

Java 假设表的持久域模型和DTO在存储库中,那么在数据库中创建表的DTO对应项可以吗?,java,c#,domain-driven-design,repository-pattern,Java,C#,Domain Driven Design,Repository Pattern,促使我提出这个问题的原因是,例如,我的类Invoice有私有字段,我不想使用它的setters,因为有些类进行某种类型的计算。相反,我的选择是:构造函数或反射中的所有字段从数据库中重建对象(发生在存储库层(存储库模式))不要创建单独的DTO,只要使用一个好的ORM框架即可。大多数现代ORM框架(如Hibernate)都可以映射私有字段,而不需要getter/setter。是的,它们在内部使用反射,但您不必自己编写任何反射。谢谢!!然而,我目前使用Dapper作为我的ORM,因为我发现实体框架速度

促使我提出这个问题的原因是,例如,我的类Invoice有私有字段,我不想使用它的setters,因为有些类进行某种类型的计算。相反,我的选择是:构造函数或反射中的所有字段从数据库中重建对象(发生在存储库层(存储库模式))

不要创建单独的DTO,只要使用一个好的ORM框架即可。大多数现代ORM框架(如Hibernate)都可以映射私有字段,而不需要getter/setter。是的,它们在内部使用反射,但您不必自己编写任何反射。

谢谢!!然而,我目前使用Dapper作为我的ORM,因为我发现实体框架速度慢并且有很多开销。我要用整洁的衣服试试这个。再次感谢您的意见。