Hibernate Subclass具有多个鉴别器值

时间:2010-03-10 00:08:45

标签: hibernate

您好我有一个需要涵盖多个判别器值的子类。

类似的东西:

@DiscriminatorValue(value =“ACT”,“DNR”,“ATT”)

会让我完美。

我们有现有数据,其中几个鉴别器可以映射到一个类(因为它们是我们的系统认为相同的类似的类型)

2 个答案:

答案 0 :(得分:23)

您可以使用DiscriminatorFormula:

// Base class
@DiscriminatorFormula("case when value in ('ACT','DNR','ATT') then 1 
   when 'OTH' then 2 else 3 end")

// Subclass 
@DiscriminatorValue("1") // maps to ACT, DNR, ATT

答案 1 :(得分:3)

子类只有1个鉴别符值。

您可以在现有子类下添加额外的子类来获取额外的鉴别器值。子类不需要具有其他属性或行为。