Вы также можете избежать привязки ваших сущностей к Сессии Hibernate, используя StatelessSession
:
StatelessSession session = sessionFactory.openStatelessSession();
вместо
Session session = sessionFactory.getCurrentSession();
Обратите внимание, что вы должны позаботиться о себезакрытия StatelessSession
, в отличие от обычного сеанса Hibernate:
session.close(); // do this after you are done with the session
Другое отличие по сравнению с обычным сеансом заключается в том, что StatelessSession
не может извлекать коллекции.Я вижу, что это основное предназначение только для извлечения данных SQLQuery
.
Подробнее о различных типах сеансов можно прочитать здесь:
http://www.interviewadda.com/difference-between-getcurrentsession-opensession-and-openstatelesssession/