java - 关于 JPA TABLE_PER_CLASS 和子实体 id

标签 java hibernate jpa

在 TABLE_PER_CLASS 映射中,

子实体id在所有类型的子实体实例中是否需要唯一

例如:
员工:1,2,3,4,5,6
销售额:1,3,5
开发人员:2,4,6

或者在表中可以是唯一的:

员工:1,1,2,2,3,3
销售额:1,2,3
开发人员:1,2,3

我正在使用 MySQL,我必须创建一个表:hibernate_sequences 来维护所有子实体中的 id 唯一,有关于该表规范的信息吗?

我用谷歌搜索过,但找不到相关信息。

最佳答案

在 TABLE_PER_CLASS ( http://docs.oracle.com/javaee/6/tutorial/doc/bnbqn.html#bnbqs ) 映射中,每个实体都有自己的表,因此 ID 在整个实体层次结构中不必是唯一的。 它们必须仅在其表中是唯一的(所以你的第二个例子是正确的)

关于java - 关于 JPA TABLE_PER_CLASS 和子实体 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24951425/

相关文章:

oracle - 为什么没有设置 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ?

java - Hibernate 2 主键作为外键

java - ListView 禁用点击项

java - 使用 getSimpleName() 与 getName() 获取记录器

java - 更改 RecyclerView Android Java 中显示的 ArrayList

hibernate - hibernate 中的实体和值类型

java - Hibernate 通过natural-id 查询子类型实体

java - 无法为连接 URL null 创建类的 JDBC 驱动程序

java - Spring Boot 中从 org.joda.time.Interval 迁移

java - JPA @OneToMany 具有复合 PK - PK/FK 重叠