我有一个实体类,如下所示:
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'
使用以下成语:
select t from Thing t where t.state=stuff.Thing$State.AWESOME
Type$InnerType
是Java的内部类型命名约定。
当您尝试使用点表示法时,Hibernate假定您正在尝试访问嵌套属性,这种情况在适当情况下会失败。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句