Я обновляю наш проект с Hibernate 3.0 до Hibernate 4.1.6. (И мы в настоящее время используем spring 3.1)
Я читал во многих статьях и в документации HibernateTemplate, что с версии 4.0 HibernateTemplate не поддерживается и что я должен заменить его использование вызовом sessionFactory.getCurrentSession()
, чтобы получить сеанс.
Поскольку этот проект был запущен со старой версией Hibernate, где было рекомендовано использовать HibernateTemplate
, в настоящее время у нас есть 124 использования HibernateTemplate
в нашем проекте. Я боюсь, что замена всех этих случаев с помощью sessionFactory.getCurrentSession()
может привести к ошибкам регрессии в нашем проекте. Кроме того, есть несколько мест, где HibernateTemplate
использовался в не транзакционном контексте, где нет текущего сеанса. Что я должен делать в этих случаях? Откройте новый сеанс и обработайте (закройте) его самостоятельно? Это было не так, когда я использовал HibernateTemplate
.
Есть ли у вас хорошая стратегия для решения этих проблем?
Спасибо.
Соответствующее чтение: