JPA规范中规定了三种映射继承的关系策略,分别如下所示。
●继承关系的实体保存在一个表(Single Table per Class Hierarchy Strategy)
●每个子类实体保存在一个表(Joined Subclass Strategy)
●每个实体类保存在一个表(Table per Class Strategy)
那么同一个对象树上是否可以有两个或多个继承策略呢?(即是否可以对继承策略进行重载)
答案要问JPA Vendor了,在java-tips.org找到下面一段:
----------------------------------------------------------------------------------------------
It's possible for an entity to specify a different inheritance strategy for its subclasses. The BrokerageAccount entity illustrates that.
@Entity
@Inheritance(strategy=InheritanceStrategy.JOINED)
public class BrokerageAccount extends Account{
float tradeFees;
}
@Entity
public class MarginAccount extends BrokerageAccount{
float maxLoanAllowed;
}
Because the Account entity specifies a SINGLE_TABLE per class hierarchy strategy, Account, CheckingAccount, SavingsAccount, CreditCardAccount and BrokerageAccount are stored in the same database table. However the MarginAccount entity's maxLoanAllowed attribute is stored in a separate table because the inheritance strategy was changed to "JOINED" in the BrokerageAccount.
A persistence provider does not need to support this feature, but the Java API specification allows for this. So to make sure that your code is portable across vendors, it's best to avoid using this feature.
----------------------------------------------------------------------------------------------
http://www.java-tips.org/java-ee-tips/enterprise-java-beans/inheritance-and-the-java-persistenc.html
分享到:
相关推荐
04_JPA详解_第一个JPA实例与JPA主键生成策略.zip
总结一下关于JPA的主键生成策略,JPA是用@GeneratedValue标记来注释的。一般的我把主键生成分成两大类。第一个就是简单的单字段主键类型,一个就是复杂的复合主键类型。我们分2种情况分别讨论。 第一种单字段主键...
只要1分就可获得JPA主键生成策略,很全的哦
使用jpa映射关联和继承
04_传智播客JPA详解_第一个JPA实例与JPA主键生成策略
Spring Data JPA中文文档1.4.3
NULL 博文链接:https://1028826685.iteye.com/blog/1523349
NULL 博文链接:https://zfei.iteye.com/blog/1453901
Spring Data JPA中文文档[1.4.3].zip
JPA用于整合现有的ORM技术,可以简化现有Java EE和Java SE应用对象持久化的开发工作,实现ORM的统一。JPA详解视频教程 第4讲 第一个JPA实例与JPA主键生成策略.avi
JPA主键策略(针对数据库自增字段重置后无效检查项) JPA主键生成策略会影响数据库自增字段的重置
SpringDataJpa开发--继承JpaRepository实现简单条件查询示例代码
Spring Data JPA中文文档[1.4.3] Spring Data JPA中文文档[1.4.3]
JPA的API非常简洁,但是描述很全面 需要的JPA知识全部可以找到
JPA教程JPA教程JPA教程JPA教程JPA教程
jpa jpa规范 jpa源码 jpa jpa规范 jpa源码
JPA(Java Persistence API)是 EJB 3.0 新引入的数据持久化编程模型。JPA 充分利用了注释(Annotation)和对象/关系映射,为数据持久化提供了更简单、易用的编程...OpenJPA 中支持四种不同的实体标识自动生成策略:
赠送jar包:spring-data-jpa-2.0.9.RELEASE.jar; 赠送原API文档:spring-data-jpa-2.0.9.RELEASE-javadoc.jar; 赠送源代码:spring-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
JPA批注参考(主要介绍JPA中的相关注解)
内容快速了解spring data jpa ,快速上手spring data,