У меня проблема при получении данных по списку идентификаторов.
Допустим, у нас есть класс Book и Author. Когда я использую HQL-запрос для получения списка книг по списку Идентификаторов автора, hibernate смешивает все:
Вот мой запрос:
public Collection<ProduitCondition> getListeOfBooksByListOfAuthorsIds(final Collection<Integer> listId, final Session session)
throws HibernateException {
try {
final StringBuilder sbHqlRequest = new StringBuilder("Select book from Book as book");
sbHqlRequest.append(" inner join fetch book.author as author");
sbHqlRequest.append(" where author.id in ( :listId) ");
final Query query = session.createQuery(sbHqlRequest.toString()).setParameterList("listId", listId);
return query.list();
} catch (final HibernateException e) {
} finally {
session.close();
}
return null;
}
Я получаю несколько книг, которые прикреплены не к тем авторам!
У кого-нибудь есть идеи почему?
Я использую старую версию Hibernate 3.0.5