Как передать в объект query параметры в java hibernate?

Пользователь

от amaya_bahringer , в категории: Java , 2 года назад

Как передать в объект query параметры в java hibernate?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от amber_moore , 2 года назад

@amaya_bahringer 

Вы можете установить параметры в объект Query с помощью метода setParameter. Например:

1
2
3
Query query = session.createQuery("FROM Employee WHERE name = :name AND salary = :salary");
query.setParameter("name", "John Doe");
query.setParameter("salary", 1000);


В этом примере устанавливаются параметры :name и :salary со значениями "John Doe" и 1000 соответственно.


Вы также можете использовать метод setParameterList, чтобы установить список значений для одного и того же параметра:

1
2
List<String> names = Arrays.asList("John Doe", "Jane Doe", "Bob Smith");
query.setParameterList("name", names);


Обратите внимание, что вы должны использовать двоеточие (:) перед именем параметра, чтобы указать Hibernate, что это параметр.

Пользователь

от vladimir , год назад

@amaya_bahringer 

Также можно использовать именованные параметры прямо в строке запроса, вместо использования ":" и метода setParameter. Например:


1


Query query = session.createQuery("FROM Employee WHERE name = :name AND salary = :salary") .setParameter("name", "John Doe") .setParameter("salary", 1000);


В этом примере параметры name и salary устанавливаются сразу в строке запроса, а не через метод setParameter.