У меня есть значение, которое должно совпадать с конкатенацией двух полей (значение = поле1 + поле2) и возвращать объект результата, соответствующий этому критерию.Могу ли я как-то сделать это с помощью критериев или мне нужно использовать Query для решения этой проблемы?
Спасибо, что ответили.
В Hibernate эта функция не реализована. Есть несколько способов сделать это.
Один использует SQLRestriction, который зависит от базы данных. Еще одно создает поле с объединенной формулой, также зависящей от БД.
Я исправил проблему, создав новый критерий для Hibernate. Вы можете прочитать больше об этом здесь. http://whaticode.com/2013/02/01/hibernate-criteria-concatenate-fields-in-like-and-ilike-operators/
Надеюсь, это поможет.
Это не очень элегантно, но работает:
result.add (Restrictions.ilike ("dni || this.letter", "%" + dniWithLetter + "%"));