在Java EE 7应用程序中,我有一个基本遵循Composite模式的类层次结构。课程如下。每个都有一个@Entity
注释。在Base
注释的继承策略是@Inheritance(strategy=InheritanceType.JOINED)
。
extends Base
)extends AbstractContainer
)extends AbstractContainer
)extends Base
)现在,AbstractContainer添加了行为,但没有添加字段。因此,它的表只有一个带有id的列,这完全是多余的。我可以让JPA跳过此表吗?
谢谢,
迈克尔
答案 0 :(得分:0)
您可能希望将AbstractContainer设为@MappedSuperclass。
映射的超类继承允许在继承中使用继承 对象模型,当它在数据模型中不存在时。它很相似 每个类继承表,但不允许查询, 坚持,或与超类的关系。其主要目的是 允许映射信息由其子类继承。
http://en.wikibooks.org/wiki/Java_Persistence/Inheritance#Mapped_Superclasses