本文介绍了如何使用JPA计算行数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我尝试使用JPA计算行数.我想使用where子句但是我不能.
I try to count number of rows using JPA.I want to use where clause however I can't.
CriteriaBuilder qb = entityManager.getCriteriaBuilder();
CriteriaQuery<Long> cq = qb.createQuery(Long.class);
cq.select(qb.count(cq.from(MyEntity.class)));
cq.where(); //how to write where clause
return entityManager.createQuery(cq).getSingleResult();
如何设置where子句,例如where age ="45".预先感谢.
How can I set where clause forexample where age="45".Thanks in advance.
推荐答案
使用 ParameterExpression
.注意:未经测试.
CriteriaBuilder qb = entityManager.getCriteriaBuilder();
CriteriaQuery<Long> cq = qb.createQuery(Long.class);
cq.select(qb.count(cq.from(MyEntity.class)));
ParameterExpression<Integer> p = qb.parameter(Integer.class);
q.where(qb.eq(c.get("age"), 45));
return entityManager.createQuery(cq).getSingleResult();
参考.
这篇关于如何使用JPA计算行数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!