[英]How to do it with JPA Criteria API?
我如何在JPA2中進行條件查詢,這等效於使用和不使用元模型的JPQL?
SELECT p FROM Employee e JOIN e.phones p WHERE e=:empl
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Phone> criteriaQuery = cb.createQuery(Phone.class);
Root<Employee> employee = criteriaQuery.from(Employee.class);
CollectionJoin<Employee, Phone> phone = employee.join(Employee_.phones);
criteriaQuery.where(cb.equal(employee, empl);
criteriaQuery.select(phone);
TypedQuery<Phone> query = em.createQuery(criteriaQuery);
List<Phone> phones = query.getResultList();
就是說,我看不出要用上面可怕的,不可讀的代碼行替換一個簡單的,顯而易見的JPQL查詢。 標准查詢對於動態構造查詢很有用,但是JPQL適用於像您這樣的靜態查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.