Критерии объединения JPA CriteriaBuilder в критерии дизъюнкцииJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Критерии объединения JPA CriteriaBuilder в критерии дизъюнкции

Сообщение Anonymous »

Мне нужно реплицировать этот запрос в код JPA CriteriaBuilder:

Код: Выделить всё

....
where
article.client_id = 1
and article.price > 0
and (
article.code like '%this is statement%'
or article.oem_code like '%this is statement%'
or (
article.description like '%this%'
and article.description like '%is%'
and article.description like '%statement%'
)
)
и вот мой код:

Код: Выделить всё

...

Root article = cq.from(Article.class);

List
 predicates = new ArrayList();

predicates.add(cb.equal(article.get(Article_.clientId), filter.getClientId()));

predicates.add(cb.greaterThan(article.get(Article_.price), BigDecimal.ZERO));

String searchQuery = filter.getSearchQuery();

Predicate disjunction = cb.disjunction();

disjunction.getExpressions().add(cb.like(article.get(Article_.code), "%" + searchQuery + "%"));
disjunction.getExpressions().add(cb.like(article.get(Article_.oem_code), "%" + searchQuery + "%"));

List andPredicate = new ArrayList();

for (String str : searchQuery.split(" ")) {
andPredicate.add(cb.like(article.get(Article_.description), "%" + str + "%"));
}
Как мне добавить этот andPredicate к моему предикату дизъюнкции? getExpressions().add(...) не принимает предикат в качестве параметра.

Спасибо

Подробнее здесь: https://stackoverflow.com/questions/384 ... n-criteria
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»