【发布时间】:2017-01-14 06:38:11
【问题描述】:
我有一个 SQL 查询:
SELECT s.*, p.name, p.code
FROM `stock` s
LEFT JOIN product p ON s.product_id = p.id
WHERE p.name LIKE "%q%"
我需要使用criteriabuilder创建查询
我是这样开始的:
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Long> cq = cb.createQuery(Long.class);
Root<Stock> stock = cq.from(Stock.class);
Path<String> path = stock.get(filter.getKey());//i have error here
String likeValue = wildCard + value + wildCard;
Predicate filterCondition = cb.conjunction();
filterCondition = cb.and(filterCondition, cb.like(path, likeValue));
请帮忙,怎样才能做得更好?
【问题讨论】:
标签: java mysql jpa orm criteria