313得票22回答
JPA和Hibernate - Criteria与JPQL或HQL的比较

使用Criteria或HQL有哪些优缺点?Criteria API是Hibernate中表达查询的一种不错的面向对象方式,但有时Criteria查询比HQL更难理解/构建。 何时使用Criteria和HQL?在哪些用例中您更喜欢哪个?还是只是口味问题?

304得票6回答
当使用JPA和Hibernate时,JOIN和JOIN FETCH有什么区别?

请帮我理解何时应该使用普通JOIN,何时应该使用JOIN FETCH。例如,如果我们有以下两个查询:FROM Employee emp JOIN emp.department dep 和FROM Employee emp JOIN FETCH emp.department dep 它们之间有区...

270得票14回答
如何在JPQL或HQL中执行限制查询?

在Hibernate 3中,是否有一种方法可以在HQL中执行与以下MySQL limit相当的操作?select * from a_table order by a_table_column desc limit 0, 20; 如果可能的话,我不想使用setMaxResults。在较旧版本的H...

165得票6回答
JpaRepository不支持DML操作[删除查询]。

我已经编写了一个查询来删除我的接口中扩展了 JpaRepository 的一些对象,但是当我执行查询时,它抛出了异常!有人可以为我解释一下吗?查询:public interface LimitRepository extends JpaRepository<CLimit, Long&gt...

123得票6回答
INNER JOIN和LEFT SEMI JOIN的区别

如何区分INNER JOIN和LEFT SEMI JOIN? 在下面的场景中,为什么我得到了两个不同的结果? INNER JOIN 的结果集要大得多。有人能解释一下吗?我想获取只出现在table_2中的table_1的名称。SELECT name FROM table_1 a IN...

109得票11回答
如何在HQL中创建一个Distinct查询

有没有办法在HQL中创建一个Distinct查询,可以使用“distinct”关键字或其他方法。 我不确定distinct是否是HQL的有效关键字,但我正在寻找与SQL关键字“distinct”等效的HQL。 有没有一种在HQL中创建Distinct查询的方法,类似于SQL关键字“dist...

86得票5回答
HQL或Java Persistence查询语言中的IN子句

我有一个带参数的 JPA 或 Hibernate 查询:SELECT entity FROM Entity entity WHERE name IN (?) 我想把参数作为ArrayList<String>传递,这是可能的吗?目前Hibernate告诉我,java.lang.ClassC...

84得票3回答
在(...)查询中编写HQL的正确方法

假设我想编写以下HQL查询:FROM Cat c WHERE c.id IN (1,2,3) 如何以参数化查询的方式正确地编写此代码,例如:FROM Cat c WHERE c.id IN (?)

80得票2回答
org.hibernate.QueryException: 尝试对集合进行非法引用

我正在尝试执行以下HQL查询SELECT count(*) FROM BillDetails as bd WHERE bd.billProductSet.product.id = 1002 AND bd.client.id = 1 但它正在显示or...

79得票6回答
Hibernate标准查询:如何在没有映射关系的情况下连接表

我想使用Hibernate的Criteria API来制定一个特定的查询,它连接了两个实体。假设我有两个实体:Pet和Owner,其中每个Owner都有很多宠物,但是这个关联关系没有在Java注释或XML中映射。 使用HQL,我可以通过在查询中指定连接(而不是向所有者类添加一组宠物)来选择拥...