Hibernate 继承映射教程

2024年8月29日 | 1 分钟阅读

我们可以使用数据库表映射继承层次结构类。Hibernate 中定义了三种继承映射策略

  1. Table Per Hierarchy(每个层次结构一张表)
  2. 每个具体类一张表
  3. Table Per Subclass(每个子类一张表)

Table Per Hierarchy(每个层次结构一张表)

在每个层次结构映射表中,需要单个表来映射整个层次结构,添加一个额外的列(称为鉴别器列)来标识类。但是,表中存储了可空值。

使用 xml 文件的每个层次结构表
使用注解的每个层次结构表

每个具体类一张表

对于每个具体类表,将根据类创建表。但是,子类表中会添加重复的列。

使用 xml 文件的每个具体类表
使用注解的每个具体类表

Table Per Subclass(每个子类一张表)

在这种策略中,表是根据类创建的,但通过外键关联。因此,没有重复的列。

使用 xml 文件的每个子类表
使用注解的每个子类表