java - Hql "in"语句不适用于 @ElementCollection

标签 java hibernate jakarta-ee hql


我有一个带有 @ElementCollection@Enumerated(EnumType.ORDINAL)
的类集合属性 我正在尝试对该集合执行 in 语句,但是在生成的 sql 中我得到了这个 -> {non-qualified-property-ref} in (?)

我在创建 hql 本身时可能做错了什么。会不会是因为元素实际上是枚举值?

谢谢, 彼得

最佳答案

根据文档 (http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html),您应该能够使用“in elements”表达式执行此操作:

select mother from Cat as mother, Cat as kit
where kit in elements(foo.kittens)

但是,Hibernate 中存在一个 Unresolved 错误...它无法像您预期的那样对枚举值起作用,请参阅:https://hibernate.onjira.com/browse/HHH-5159寻求解决方法。

关于java - Hql "in"语句不适用于 @ElementCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8087820/

相关文章:

sleep - sleep 的目的是什么(long millis,int nanos)?

java - 为什么 Hibernate 默认不设置 @DynamicInsert

java - 在预煮中使用变量

java - jsp中如何传递多个变量的值?

java - Java中的类和对象问题

java - 在 Hibernate 中保存枚举

hibernate - 使用 Hibernate 或 JDBC 将用户从 Java 中的用户 session 传递到 Firebird 触发器

java - 动态改变Timer服务或者Quartz

java - Maven : Including a META-INF folder in the classes folder

java - 制作一个 BrainF*ck 解释器,循环遇到麻烦