2014-10-10 29 views

回答

0

如果你想使用一個CriteriaAPI你需要做的:

final CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder(); 
    final CriteriaQuery<PayerCriteria> criteriaQuery = criteriaBuilder.createQuery(PayerCriteria.class); 
    final Root<PayerCriteria> root = criteriaQuery.from(PayerCriteria.class); 
    criteriaQuery.select(root); 

    final Join join = root.join("determinationRequest"); 

    final Predicate predicate = criteriaBuilder.equal(join.get("id"), 1); 
    criteriaQuery.where(predicate); 

    final TypedQuery<PayerCriteria> query = entityManager.createQuery(criteriaQuery); 

    System.out.println("------------>" + query.getResultList()); 

有一個框架,可以說更容易負擔名爲EasyCriteria(http://easycriteria.uaihebert.com)。上述標準將如下:

EasyCriteria<RegularEntityOne> easyCriteria = EasyCriteriaFactory.createQueryCriteria(entityManager, RegularEntityOne.class); 
    easyCriteria.innerJoin("regularEntityTwo"); 
    easyCriteria.andEquals("regularEntityTwo.id", 1); 

    System.out.println("------------>" + easyCriteria.getResultList()); 
相關問題