[英]How to use where clause in jpa
我有一個查詢Select * from uploadedFile where uid="tesetetesdsfjdsfj";
我想在jpa中編寫此查詢,而我已經嘗試過
CriteriaQuery<UploadedFile> query = em.getCriteriaBuilder().createQuery(UploadedFile.class);
Root<UploadedFile> product = query.from(UploadedFile.class);
return em.createQuery(query)
.setFirstResult(0) // offset
.setMaxResults(10) // limit
.getResultList();
而且我不知道如何在此查詢中添加條件( where uid="tesetetesdsfjdsfj";
)
可以使用以下代碼段實現:
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<UploadedFile> cq = cb.createQuery(UploadedFile.class);
Root<UploadedFile> product = cq.from(UploadedFile.class);
cq.select(product);
cq.where(cb.equal(
// you can replace product.get(UploadedFile_.uid) with product.get("uid")
product.get(UploadedFile_.uid), "tesetetesdsfjdsfj"));
em.createQuery(cq)
.setFirstResult(0)
.setMaxResults(10)
.getResultList();
有關使用API的更多信息,請參見此處
可以使用以下代碼段實現:
Query query = entityManager.getCriteriaBuilder().createQuery("from UploadedFile fm where sm.someField=:arg1");
query.setParameter("arg1", arg1);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.