- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 Hibernate JPA。
假设我有这些类:
AbstractPerson
|--> ConcreteEmployee
|--> ConcreteCustomer
有没有办法让具体的类有独立的ID?
我正在使用 InheritanceType.TABLE_PER_CLASS。
最佳答案
来自 Hibernate 注释引用指南:
2.2.4.1. Table per class
This strategy has many drawbacks (esp. with polymorphic queries and associations) explained in the JPA spec, the Hibernate reference documentation, Hibernate in Action, and many other places. Hibernate work around most of them implementing this strategy using
SQL UNION
queries. It is commonly used for the top level of an inheritance hierarchy:@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class Flight implements Serializable { ... }This strategy supports one-to-many associations provided that they are bidirectional. This strategy does not support the
IDENTITY
generator strategy: the id has to be shared across several tables. Consequently, when using this strategy, you should not useAUTO
norIDENTITY
.
所以恐怕你想要的不被支持(我建议使用GenerationType.TABLE
)。
关于Java/Hibernate JPA : InheritanceType. TABLE_PER_CLASS 和 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3154649/
我正在尝试在 Hibernate 中实现一个非常简单的继承模型。基本上我有一个可以称为 A 的父类(super class),以及几个继承自 A 的子类。由于我看到的行为对所有这些行为都是相同的,因此
我尝试在 Doctrine 中使用继承类型,但是当我创建数据库时,它显示此错误消息: [Doctrine\Common\Annotations\AnnotationException] [Semant
我有两个类,“OrderBase”和“OrderPay”,我试图为其实现“InheritanceType.JOINED”类型的继承。 虽然 TABLE_PER_CLASS 和 SINGLE_TABLE
例如我们有这样的结构: @Entity @Table(name = "A") @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @Discri
我试图在数据库中表示一个具有多种字段类型的可编辑表。我的方法如下: TABLES - uuid //Primary key - cols - rows - name VALUE -col //Key
我的类结构如下所示...我在这里实现了两种单独的策略,但根类的继承策略(即 InheritanceType.JOINED)正在整个层次结构中使用... @Entity @Inheritance(str
我刚开始使用 Hibernate,对 InheritanceType.JOINED 和 @PrimaryKeyJoinColumn 有疑问。 给定以下数据库表,其中员工引用人员,经理引用员工: cre
我在使用 hibernate 实现 InheritanceType.JOINED 策略时遇到问题。 我一直遇到这种异常: Caused by: javax.persistence.Persistenc
我正在努力让原生查询与 InheritanceType.JOINED 一起使用.来自 hibernate documentation我已经找到: 13.1.6. Handling inheritanc
大家好。 我正在尝试将一个一对多关联映射到一个实体,该实体是使用 @Inheritance(strategy=InheritanceType.JOINED) 映射的 .... @ManyToMany
我创建了以下场景: @javax.persistence.Entity @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) public
我有以下类(class): AbstractEntity,它是我所有实体的父类(super class),存储所有实体使用的公共(public)字段,例如 id: @Entity @Inheritan
我正在使用 Hibernate JPA。 假设我有这些类: AbstractPerson |--> ConcreteEmployee |--> ConcreteCustomer 有没有办法让具体的类有
我有一个简单的 JOINED 文档层次结构: CREATE TABLE Documents ( id INTEGER NOT NULL, discriminator ENUM('officia
我有这样的东西.. 一种汽车类别,其中有多个座位中的一个座位。 Seat 有一个子类 LeatherSeat。 public class Car { private Seat seat; ..
有一些这样的类: @Entity @Table(name="person") @Inheritance(strategy=InheritanceType.JOINED) public class Pe
从 Hibernate 4.2 升级到 5.5.5 后,我的继承不再起作用。启动我的应用程序会引发以下错误: ERROR AssertionFailure:33 - HHH000099: an ass
给定一个由三个子实体 SubEntityA、SubEntityB 和 SubEntityC 扩展的 SuperEntity,您能否对 SuperEntity 执行条件查询以只检索 SubEntityB
我有一个经典的 Hibernate @Inheritance(strategy=InheritanceType.SINGLE_TABLE) 和 @DiscriminatorFormula。它工作正常。
在对谷歌进行了一些研究之后,我还没有发现任何人遇到我的问题,这就是我在这里发布的原因。 在我的应用程序中,我有三个实体:用户(抽象)、客户、代理。 客户和代理商扩展用户。这是用户的代码: @Entit
我是一名优秀的程序员,十分优秀!