1.持久化对象的生命周期,事务的管理和持久化对象的增删查改都是通过session对象来完成
2.hibernate在操作数据库之前必须先获得Session对象,相当于JDBC在操作数据库之前首先必须获得Connection对象一样
3.Session对象不是线性安全的
4.获取Session对象之后,hibernate内部不会获取操作数据库的java.sql.Connection对象,而是等待session对象真正需要对数据库进行CRUD等操作时,才会从数据库的连接池中获取java.sql.Connection对象,而关闭session对象之后,则是将java.sql.Connection放回连接池中,而不是直接关闭java.sql.Connection
5.在hibernate3.1之后,可以在hibernate.cfg.xml文件中配置如下代码
<property name="current_session_context_class">thread</property>
使用这个配置信息后,session对象可以通过SessionFactory对象的getCurrentSession()来获取