Как работать с Hibernate Named запросом и объектом Criteria вместе - PullRequest
2 голосов
/ 04 марта 2011

Я определил именованный запрос Hibernate, поэтому я получаю этот запрос с помощью crit.getNamedQuery (),

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

Любые подсказки, пожалуйста.

С уважением, Раджу

1 Ответ

2 голосов
/ 04 марта 2011

Вы не должны добавлять предложения в предварительно созданный именованный запрос, вы можете создать любой запрос с помощью класса SqlQuery .

Вы также можете изменить свой именованный запрос и добавитьпредложение like.

session.getNamedQuery("findStuff").setString("likeWhat", value);

, где ваш запрос будет

select * from sometable where somevalue like :likeWhat

Редактировать:

Вы также можете сделать что-то вроде

Query q = session.getNamedQuery("findStuff");
String query = q.getQueryString(); // the sql statement
query += " and findStuff like :likeWhat"; // add your clause
q = session.createQuery(query);
q.setParameter("likeWhat", value);

Но я думаю, что это глупо.

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