【发布时间】:2010-12-21 23:49:15
【问题描述】:
今天我遇到了一个有趣的问题。我一直在使用 Hibernate JPA 进行继承层次结构,使用 SINGLE_TABLE 策略。后来,我在层次结构中添加了一个超类,它定义了TABLE_PER_CLASS 策略。结果是整个层次结构都盯着TABLE_PER_CLASS。当然,如果我们阅读@Inheriatance javadoc:
定义用于实体类层次结构的继承策略。它在作为实体类层次结构根的实体类上指定。
Hibernate docs 但是,说:
可以对同一继承层次的不同分支使用不同的映射策略
并继续本声明的豁免。这是通过 XML 配置完成的。
所以,最后,我的问题是 - 有没有办法(也许是休眠属性)通过注释启用上述 xml 行为,并使用 EntityManager。
【问题讨论】:
-
我不这么认为,我认为这是对 JPA 规范的 Hibernate 扩展。
-
这是肯定的。我很好奇是否没有一些特定于休眠的属性来启用该行为。