1.Hibernate的Session
- session也叫持久化管理器,是因为它是与持久化有关的操作
- session不是线程安全的,代表与数据库之间一次或多次的操作
- session通过SessionFactory打开,所有工作完成后,需要关闭
- 每获得一个Session对象都会有一个Connection对象与它关联,但关闭Session不意味着关闭Connection,(如果有数据库连接池,那么关闭Session意味着Connection被放回连接池中)
- 它与Servlet中的Session没有任何关系
2.Configuration、SessionFactory、Session的生命周期
3.持久化对象的状态
1.瞬间对象
使用new关键字初始化的对象,不会被立刻持久保存到数据库。它们和数据库没有任何关联,只要不引用,它们将被垃圾回收
2.持久化对象
持久化对象是拥有数据库标识的数据,拥有与数据库对应的id,由session统一管理。
持久化对象是在事物中进行的,它们的状态将在提交实物的时候与数据库同步
3.离线对象
Session关闭后的对象为离线对象,它们不再与数据库保持同步,不收Hibernate管理