как использовать именованные параметры в упомянутом сценарии? - PullRequest
0 голосов
/ 02 марта 2012

Я использую спящий режим. У меня есть требование добавить условие where динамически. Я высылаю список строк.
select * from employee.

Теперь мне нужно добавить where условие как:
select * from employee where name like :somename or name like:othername

Здесь somename и othername являются именованными параметрами. Значения задаются из списка строк.
В этом случае список может содержать две строки, так что для обоих именованных параметров могут быть установлены значения.

Как я могу использовать имена для именованных параметров?

Сейчас я использую список строк для обоих именованных параметров и для установки их значений.
Проблема в том, что есть несколько ограничений на использование именованных параметров.

Именованный параметр не должен содержать специальных символов (-, / и пробел). Также имя параметра не должно быть длиннее 30 символов .

Если в моем списке строк есть какое-либо имя с указанными выше специальными символами или его длина превышает 30 символов, то генерируется исключение, если такая строка используется в качестве именованного параметра.

Как я могу использовать именованные параметры для каждой строки в списке?

1 Ответ

0 голосов
/ 02 марта 2012

Вы пытались использовать Criteria API http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/querycriteria.html

Ну выделите с кучей "где" не должно быть проблем с критериями API. просто заботиться о, как%

и проверьте это, и скажите мне, если вам нужно больше подробностей. http://www.javalobby.org/articles/hibernatequery102/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...