2017-03-01 27 views

Trả lời

9

này tiêu chí thiết lập nên làm các trick:

CriteriaBuilder cb = entityManager.getCriteriaBuilder(); 
CriteriaQuery<Employee> q = cb.createQuery(Employee.class); 


Root<Employee> root = q.from(Employee.class); 
q.select(root); 

List<String> parentList = Arrays.asList(new String[]{"John", "Raj"}); 

Expression<String> parentExpression = root.get(Employee_.Parent); 
Predicate parentPredicate = parentExpression.in(parentList); 
q.where(parentPredicate); 
q.orderBy(cb.asc(root.get(Employee_.Parent)); 

q.getResultList(); 

Tôi đã sử dụng quá tải CriteriaQuery.where phương pháp ở đây mà chấp nhận một Predicate .. một vị in trong trường hợp này.

+0

Cảm ơn bạn rất nhiều !! – Raj

+0

Offtopic: cảm ơn bạn đã chỉnh sửa một câu trả lời của tôi ;-) – GhostCat

Các vấn đề liên quan