`
joeblow
  • 浏览: 178573 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JPA中继承策略的重载

    博客分类:
  • JEE
阅读更多
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










分享到:
评论

相关推荐

    java面试技巧及笔试汇集

    2. JPA或JDBC:了解Java与数据库交互的方式,如JPA的使用或JDBC的基本操作。 十、面试谈工资技巧 1. 自我评估:根据自身技能和经验,合理评估薪资范围。 2. 市场调研:了解当前行业的薪资水平,以及公司规模、地域...

    JAVA面试宝典2018

    在面试中,面试官可能会问到关于构造器、访问修饰符、重载与重写、抽象类与接口的区别等问题。同时,掌握异常处理机制、线程同步与并发、垃圾回收机制(如GC的工作原理和内存模型)也是衡量一个Java程序员技能的重要...

    java 2EE 基础知识笔记

    多态性则是通过方法重载(overloading)和方法覆盖(overriding)来实现的,其中方法覆盖是在子类中重新定义父类的方法,从而表现出不同的行为。 #### 六、异常处理 Java的异常处理机制是其一大特色,它分为编译时...

    java笔试100题

    1. **抽象**:在Java中,抽象是设计类时的一种策略,允许我们创建一个类,只关注其主要功能,而不必关心具体的实现细节。这通常通过使用抽象类(含有抽象方法的类)或接口来实现。抽象类不能实例化,但可以作为其他...

    廖雪峰 Java 教程1

    5. **面向对象编程**:深入讲解了面向对象的基础,如封装、继承、多态,以及构造方法、方法重载、抽象类、接口和静态字段等。 6. **异常处理**:讲述了Java中的异常机制,包括异常的捕获、抛出、自定义异常,以及...

    java常见面试题合集

    - 继承与多态:掌握单一继承和接口的多实现,以及方法的重写和重载。 - 封装与抽象:理解类的封装原则和抽象类的概念。 - 构造器:了解构造器的作用和不同类型的构造器。 - 异常处理:掌握try-catch-finally语句...

    java面试

    2. JPA与Hibernate:理解ORM思想,使用JPA进行对象关系映射,或使用Hibernate进行持久化操作。 十、分布式与高并发 1. 分布式缓存:如Redis、Memcached的使用,理解其缓存策略。 2. 分布式ID生成:如雪花算法、UUID...

    最全的java面试题

    - 方法的重载和重写。 - 构造器及其作用。 - 类与对象的概念,面向对象的设计原则。 5. **接口与抽象类**: - 接口与抽象类的区别与应用场景。 - 多态的实现机制。 6. **集合框架**: - `ArrayList`与`...

    北大软件所老师Java高级技术讲课PPT

    此外,可能还会涉及到访问控制修饰符(public、private、protected)、构造函数、this关键字、super关键字、final关键字的使用,以及重写(Override)和重载(Overload)的区别。 5. **Java EE概述(1).pdf**和**...

    Spring-Reference_zh_CN(Spring中文参考手册)

    12.6.1. 在Spring环境中建立JPA 12.6.1.1. LocalEntityManagerFactoryBean 12.6.1.2. LocalContainerEntityManagerFactoryBean 12.6.1.3. 处理多个持久化单元 12.6.2. JpaTemplate 和 JpaDaoSupport 12.6.3. 基于...

    最新Java面试题大全.rar

    1. **Java基础**:面试通常会从Java的基础语法开始,包括变量、数据类型、运算符、流程控制语句(如if-else、switch-case、for、while)、类与对象、封装、继承、多态等。此外,异常处理(Exception Handling)和...

    【Java面试+Java后端技术学习指南】

    - JPA/Hibernate:理解ORM思想,使用JPA进行数据库操作,熟悉Hibernate的实体管理。 这些只是Java后端技术的一部分,还有更多的高级主题如并发编程、JVM内存模型、分布式系统、性能优化等,都需要不断学习和实践。...

    各个公司的JAVA面试题

    这些知识点只是Java面试中的一部分,实际面试可能还会涉及到异常处理策略、JPA/MyBatis操作数据库、Maven或Gradle构建工具、单元测试、性能优化、源码分析等更深入的话题。全面理解和熟练应用这些知识,将有助于你在...

    java面试题集大全

    - 类与对象:理解面向对象编程的基本概念,包括封装、继承和多态。 - 访问修饰符:public、private、protected和默认修饰符的使用场景。 - 构造器:了解构造器的作用和重载构造器的方法。 - 异常处理:掌握try-...

    java面试题库 整合完美收藏版

    1. Java语法:包括数据类型(如基本类型和引用类型)、变量、运算符、流程控制语句(if、for、while等)、方法定义和调用、类与对象、封装、继承和多态等基础知识。 2. 面向对象:理解类与对象的概念,掌握构造函数...

    2022最全java面试题+心里辅导

    - 类与对象:掌握类的定义、对象的创建及生命周期,理解封装、继承和多态等面向对象特性。 - 构造器:知道构造器的作用,以及何时使用无参和带参数的构造器。 - 方法:理解方法的重载和重写,以及抽象方法和接口...

    Java岗面试题库.7z

    - 类与对象:封装、继承、多态三大特性。 - 访问修饰符:public、private、protected、默认。 - 构造器:初始化对象,了解构造函数和构造链。 - 方法重载与方法覆盖。 - 抽象类与接口:抽象方法、抽象类与接口...

    Java面试框架高频问题2019

    - 实现`HandlerInterceptor`接口或继承`HandlerInterceptorAdapter`。 **问题二十一:注解原理** - 注解是Java语言的一个特性,用于在代码中添加元数据。Spring框架利用反射机制读取和解析注解,从而实现特定的...

Global site tag (gtag.js) - Google Analytics