java - JPQL 未给出结果

标签 java hibernate jpa jpa-2.0 spring-data

在我的应用程序中,我使用 JPA (使用 Hibernate 作为 JPA 提供程序)访问数据库。当我尝试运行查询时,系统为我提供了空结果列表。但是,当我运行同一查询的 SQL 表示形式(从日志中获取)时,它运行良好并为我提供了正确的结果。

有人可以帮助我了解这里可能出现的问题吗?

最佳答案

问题可能出在参数值上。您是否使用任何需要提供者进行推断的类型参数(例如枚举)?我见过一个复杂的 JPQL 查询,Hibernate 3.3 无法推断实体属性的枚举类型(数字或字符串),因为实体属性未使用查询中的实体别名进行限定(而使用实体属性的alias.entityAttribute)。枚举以其序列化形式设置为参数。就像 @Gimby 所说,您可以检查完整的 Hibernate 日志以查看设置为参数的实际值是什么。

关于java - JPQL 未给出结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21754562/

相关文章:

java - 将方法转换为 DAO 层中的泛型方法

java - 带 ehcache 的 Hibernate 4 是否需要 ehcache-core 库?

java - 字节码增强不起作用

java - JPA Query.getResultList() - 以通用方式使用

java - 如何查找按日期排序的 List<Object>

hibernate - 使用接口(interface)覆盖 @Embedded 的 @ManyToOne targetEntity

java - "R cannot be resolved to a variable "即使在安装新的 Eclipse 之后

java - 从一个类调用另一个类的方法

java - Spring Transaction 如果这个重复的键给出异常,但它不执行回滚(更新代码以更好地检测错误)

hibernate - Grails引发非唯一对象异常