java - 当 JPA 实体不应准确反射(reflect)数据库上的物理模型时

标签 java database jpa entity

大多数程序员都同意在使用 JPA 实体时避免使用 DAO 模式。事实上,作为一个简单的 POJO,任何实体都可以仅使用注释来持久化。

但是,在概念域对象与物理域对象(反射(reflect)数据库表)略有不同的情况下,使用表示概念模型的“业务对象”并将持久操作委托(delegate)给“数据存储对象”是一个好习惯吗?因此,业务对象将不受 JPA 注释的约束,因为它现在是数据存储对象的责任。

处理概念域和物理域之间的一些差异的最佳实践是什么?我是否应该引入 DAO 模式以便将每个 BO 转换为“数据存储对象”并对其应用持久化操作?

最佳答案

据我了解,不再需要数据传输对象等。即使您的数据库与域模型不同,您也可以使用 JPA 注释实现很多目标。然而,最佳实践是保持数据模型和域模型同步。

关于java - 当 JPA 实体不应准确反射(reflect)数据库上的物理模型时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10567548/

相关文章:

java - 调用方法失败。消息负载的类型为 : String

java - 为 Javadoc 适当记录 Varargs

php - 尝试将数据保存到数据库时如何解决数组到字符串的转换

mysql - 在云上托管 MySQL 数据库

sql - 实现查找/查找下一个算法

java - 事务和 JPA/Persistence.xml

Java等待线程在通知后不会恢复

java - Operator switchMap() 没有取消订阅之前的请求

java - 类似于 HQL 中的 % 运算符

java - 使用@Inheritance JPA属性时插入顺序无效