Как Hibernate сеанс фактически управляет сеансом?
Я только что получил отношения между Hibernate Session и Connection. Но теперь у меня возникает другой вопрос: как hibernate sessionfactory управляет сессией? В следующем фрагменте кода: метод save () класса DAO:
Session session = sessionFactory.openSession();
Transaction tx=null;
tx=session.beginTransaction();
session.save(transientInstance);
session.flush();
tx.commit();
Когда мы звонимsessionFactory.openSession()
, он создаст новый сеанс, присоединенный к текущему потоку (через ThreadLocal), этот сеанс также присоединен к соединению JDBC, но, как вы можете видеть, мы неНе нужно закрывать сеанс (session.close ()), ни соединение. Итак, каков жизненный цикл сеанса Hibernate, при каких обстоятельствах он будет закрыт? автоматически?