У меня возникли проблемы с API-интерфейсом setParameterList hibernate.
Я пытаюсь передать коллекцию в SQLQuery и выполняю поиск в предложении «in». Записи существуют в БД и выполняют необработанный запрос, я могу получить их или, если я просто заменю их в том же Hibernate SQL, как emp.emp_name in ('Joe','John')
, я могу получить желаемый набор результатов. Я не понимаю, почему Hibernate не сможет заменить коллекцию вместо указанного параметра. Вот код:
session.createSQLQuery("select emp_id as id from emp where emp.emp_name in (:empNames)")
.addScalar("id",Hibernate.INTEGER)
.setParameterList("empNames",new String[]{"Joe","John"})
.list()
Я посмотрел на документацию Hibernate для setParameterList , но я не могу объяснить это конкретное поведение.