hibernate 获取session真是五花八门。

Session session = getSession();
Session session = super.getSessionFactory().getCurrentSession();
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();

hibernate 获取session真是五花八门。
请大神分析以上三种,哪种spring事务会自动管理,哪些需要手动关闭。

Query query = session.createQuery(sql);
List list = query.list();
    与getHibernateTemplate.find(sql)又有什么样的区别?

貌似就是不同的链接方式而已,