|
|
1
17
我写了一个实用类, JDAL J请执行以下操作:
等等。。。 如果您对源代码感兴趣,请参见 JpaUtils.java |
|
|
2
4
我已经使用cb.createQuery()对其进行了分类(没有result type参数):
我所做的工作类似于一个criteria builder的构建器,您可以在其中构建一个查询,并使用相同的条件限制调用list()或count() |
|
|
3
2
上面的解决方案都不适用于EclipseLink 2.4.1,它们都以笛卡尔积(N^2)作为结束,这是EclipseLink的一个小技巧,唯一的缺点是我不知道如果你从多个实体中选择,会发生什么,它会试图从你的CriteriaQuery的第一个找到的根中计数,不过,这个解决方案不适用于Hibernate(JDAL可以,但JDAL不适用于EclipseLink)
|
|
|
4
1
你在找这样的东西吗?
注:我不知道这是否是实现这一点的正确/最佳方法,仍然在学习标准API。。。 |
|
|
5
1
条件查询的整体思想是它们是强类型的。因此,在使用原始类型(在CriteriaQuery或根或根中没有泛型)的每个解决方案中,这些解决方案都违背了这个主要思想。我只是遇到了同样的问题,我正在努力用一种“恰当的”(与JPA2一起)方式解决它。 |
|
|
6
1
如果您想要所有元素的结果和计数,比如Spring Data的 Page -元素可以执行两个查询。您可以做的是将条件与查询执行分离。 按城市查找用户的示例
除了getUser方法之外,您还可以构建第二个方法来计算元素
createConditions方法将同时处理这两个问题,因此不必为条件复制逻辑。
long elementCount=yourCriteriaClassInstance.getElementCount(…); List users=yourCriteriaClassInstance.getUsers(…) |
|
|
7
-3
我用冬眠和 criteria api
} 希望帮助 |
|
|
ê¹ë¯¼ì¬ · 在六边形的建筑中,例外情况应该扔到哪里? 2 年前 |
|
|
Nisi Zenuni · JPA和MongoDB持久性 2 年前 |
|
Martin Pfeffer · Spring Boot JPA 2 年前 |
|
|
Manish · 数据库更新中乐观锁定的实现 2 年前 |
|
|
Eloi · JPA Buddy不生成版本化迁移,但喜欢我的数据库为空 2 年前 |