Я новичок в Hibernate, и я создаю простое приложение для поиска фильмов на Java. Мне нужно сделать запрос в моем dao для поиска фильмов по списку ключевых слов. Я знаю, как это сделать в SQL, но мне было интересно, есть ли способ сделать запрос HQL для этого. Метод Java в дао получает список, который представляет собой список keyowrds и SQL заявление, как это:Есть ли способ сделать этот запрос в HQL?
SELECT *
FROM movies
WHERE name LIKE '%keyword1%' OR name LIKE 'keyword2' ...
Так для достижения этой цели необходимо перебирать корыта всего списка и сцепить запрос для каждого ключевого слова.
Возможно, сделать этот запрос более простым в HQL, поэтому вы можете передать список ключевых слов в запрос qu, чтобы он мог использовать его с инструкцией LIKE?
Спасибо.
Привет, спасибо за Ваш ответ! Мне нужно использовать подстановочный знак SQL «%», поэтому единственный способ - перебрать список ключевых слов и построить строку запроса в правильном направлении? Также мне нужно повторить список во второй раз, чтобы правильно установить параметры? Благодаря! –
Да. Но вы можете создавать параметры на одной и той же итерации. – Thihara
В этом случае вам может быть проще использовать стандартные параметры '?' Вместо параметров 'named'. – Thihara