如何使用Hibernate从JPQL查询中引用内部枚举(在实体内定义)?

加布里埃尔·鲍曼(Gabriel Bauman):

我有一个实体类,如下所示:

package stuff;

@Entity
class Thing {

    @Id
    @GeneratedValue 
    private Long id;

    @Basic
    @Enumerated
    private State state;

    public enum State {
        AWESOME,
        LAME
    }
}

如何使用JPQL和Hibernate选择状态为AWESOME的所有内容?

select t from Thing t where t.state=stuff.Thing.State.AWESOME

...给出错误...

org.hibernate.hql.internal.ast.QuerySyntaxException: Invalid path: 'stuff.Thing.State.AWESOME'
加布里埃尔·鲍曼(Gabriel Bauman):

使用以下成语:

select t from Thing t where t.state=stuff.Thing$State.AWESOME

Type$InnerType 是Java的内部类型命名约定。

当您尝试使用点表示法时,Hibernate假定您正在尝试访问嵌套属性,这种情况在适当情况下会失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Hibernate中为内部查询设置限制?

如何使用条件内定义的内容

如何使用Hibernate映射实体内部的实体集合?

JPQL内部联接查询

如何使用jpa / hibernate为实体映射字段定义索引?

如何注释Android房间实体内部的默认值?

SF2:在实体内部使用服务

如果在c中的struct内定义,枚举的作用域是否有限?

如何在定义文件中引用Typescript枚举

如何在ASP.NET MVC5中的发布操作中更新实体内部的集合?

如何为类内定义的枚举覆盖std :: hash?

如何使用枚举/引用的实体ID执行Datomic事务?

如何引用在子类中定义的枚举

是否可以在Symfony3中的实体内部定义自定义SQL查询

在实体内部使用连接

如何验证实体内部的电子邮件?

访问其他实体内部的实体方法获取对象引用错误

Shopware 6-使用DAL过滤实体内部的集合

从头开始在体内定义警报变量

在JPQL中使用自定义构造函数返回相关实体时如何避免INNER JOIN

实体内部的Symfony分页

Symfony2:在用户实体中获取组的角色,但避免在实体内部进行查询

如何使用枚举(在结构内部定义)作为字典的键?

JPA / HIBERNATE:如何查询返回非实体对象或带有内部非实体对象的对象列表?

Javascript - 如何使用循环在对象内定义数组?

如何转义 JPQL 中实体名称的保留关键字 - Hibernate

Hibernate Mapping:使用 OneToMany 引用一组实体,使用 OneToOne 引用该集合中的一个实体

如何使用自定义查询和 Hibernate 映射实体属性

如何使用 Hibernate 在 Spring Boot 中查询实体的所有关系对象?