当前位置: 首页 > 面试题库 >

具有多个鉴别符值的Hibernate子类

阙奇思
2023-03-14
问题内容

您好,我有一个子类,需要覆盖多个鉴别值。

就像是:

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

会让我完美。

我们拥有现有的数据,可以将多个鉴别符映射到一个类别(因为它们是我们系统将考虑的同一事物的相似类型)


问题答案:

您可以使用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


 类似资料:
  • 问题内容: 我有一个查询说 ,我想要的是使用where子句或其他任何方式显示多个记录,以便获得以下数据。 姓名编号 我试着用 在clause.ie 或等,但没有作品。 问题答案: 只需使用一个子句 您也可以使用OR(仅用于提供信息,在这种情况下,我将不使用此功能) 如果您的where子句中有其他条件,请不要忘记在“或”周围加上圆括号。

  • 问题内容: 我有一个简单的JOINED文件层次结构: 如您所见,所有子表所做的就是共享Documents表中的相同ID。除此之外,还会添加一列,并且不会添加任何新属性。(还要注意,在层次结构中还有两个其他具体的子表,由和表示不相关。) 这是上述表的映射: Document.java : SystemDocument.java : ExternalDocument.java : 后者应映射到Docu

  • 我有一个这样的场景 它的子类具有鉴别器值“creator” 现在,我不想再为帐户类型“user”添加一个类(类似于),因为“creator”和“user”都与帐户类型相关。 我需要一个可能的解决方案,在这里设置我的鉴别器值要么‘创建者’或‘用户’的基础上,帐户的类型。 有没有办法根据条件在类内部设置我的鉴别器值? 我如何继续执行? 请帮帮我。

  • 问题内容: 我想在Java中实现具有多个值的哈希表,即 并且将返回2倍的值。 我怎样才能做到这一点? 问题答案: 您可以改用Multimap。它在列表中为一个键保留多个值。在commons- collection 和Guava中有实现。 这类似于使用值是列表的Hashmap,但是不必显式创建列表。 自己动手做的同一示例如下所示: 请注意,您可以将Multimap用作构建器,并对其调用asMap以返

  • 我们有一个遗留表,我们不希望通过添加鉴别器列来改变它。有没有可能有不带鉴别器列的tablePerHierarchy。 下面是我的父级和子级代码 @Table(名称=“Shape1”)@Inheritation(策略=InheritanceType.Single_Table)@DiscriminatorColumn(名称=“Discriminator”,discriminatorType=discr

  • 在eclipse中调试时 退回申请。isEmpty()?空:应用程序。得到(0); 这些表达式被计算为 applications.is空()- 应用。获取(0)- 应用。大小()- 但在执行这一行之后,它的抛出错误 组织。冬眠HibernateeException:找到了多个具有给定标识符的行:263536, 即使它的大小显示为1,那么它为什么以及如何在执行后获得多行。