Используйте регулярные выражения в JPA CriteriaBuilder

Я использую JPA CriteriaBuilder для выбора объектов типаMyEntity из базы данных MySQL следующим образом:

String regExp = "(abc|def)"
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery query = cb.createQuery( MyEntity.class );
root = query.from( MyEntity.class );
predicates = new ArrayList<Predicate>();

predicates.add( cb.like( root.<String>get( "name" ), regExp ) );

Таким образом, результат запроса должен содержать любую сущность, гдеname значение соответствует заданному regExp. Но список результатов всегда пуст. Изменение regExp на/(abc|def)/g не имеет никакого эффекта и не добавляет подстановочный знак%

Как заставить сопоставление образца работать?

Альтернативно: как я могу использовать собственный MySQL REGEXP вместе с CriteriaBuilder?

Ответы на вопрос(3)

Ваш ответ на вопрос