我了解如何在Hibernate继承映射中使用DiscriminatorColumn, 但是,在我的场景中,我有更复杂的继承模块,我需要定义两个鉴别器。我想为整个继承树使用一个表。 基本上,父类是abastract,它代表一个人实体, 然后,我有两个不同的抽象实现,妻子&丈夫。所以基本上我已经需要一个鉴别器。然后对于每个人(妻子和丈夫),我有不同的信息需要保持,所以我不需要为每个人(妻子和丈夫)创建一个鉴别器。
我想出了这个实现,但是我被困住了,我怎么能从这里继续?
@Entity
@Table (name="sex")
@Inheritance (strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn (name="transaction_type", discriminatorType=DiscriminatorType.STRING)
public abstract class Person {
...
}
@Entity
@DiscriminatorValue("wife")
public class Wife extends Person {
...
}
现在,我如何在妻子班上设置一个鉴别员栏,就像我对父母一样?
答案 0 :(得分:1)
你不需要第二个鉴别器。 Wife
实体将正常运作
在2级继承情况下,中产阶级(在这种情况下是妻子和丈夫)并不是@DiscriminatorColumn
。
相关问题Problem with 2 levels of inheritance可能会有所帮助
另一个问题Hibernate Inheritance Single_table