JPA继承概述

本文概述

  • JPA继承注释
  • JPA继承策略
继承是面向对象编程语言的一项关键功能, 子类可以在其中获取其父类的属性。此功能增强了代码的可重用性。
关系数据库不支持继承机制。因此, Java Persistence API(JPA)用于映射关系数据库模型中继承的关键特征。
JPA继承注释以下是最常用的JPA继承注释:-
  • @Inheritence-此注释应用于根实体类, 以定义继承策略。如果没有使用此注释定义任何策略类型, 则它遵循单表策略。
  • @MappedSuperclass-此批注适用于其子类继承的类。映射的超类不包含任何单独的表。
  • @DiscriminatorColumn-discriminator属性将一个实体与另一个实体区分开。因此, 该注释用于提供鉴别符列的名称。仅在根实体类上需要指定此注释。
  • @DiscriminatorValue-此注释用于指定代表特定实体的值的类型。需要在子实体类上指定此注释。
注意-如果我们未传递discriminator列的名称及其值, 则JPA默认情况下会考虑使用它。它将DTYPE视为标识符列名称, 并将实体名称视为标识符值。JPA继承策略【JPA继承概述】JPA提供了三种策略, 通过它们我们可以轻松地在数据库中持久继承。
  • 单表策略
  • 加盟策略
  • 逐表策略

    推荐阅读