Hibernate对象的三种状态

来源:互联网 发布:网络诈骗1000元 编辑:程序博客网 时间:2024/06/07 22:32

Hibernate对象有三种状态,分别是:瞬时/临时(Transient)、持久态(Persistent)、游离态(Detached)。


     瞬时/临时状态:创建了一个对象,但是这个对象没有在session范围内,则称这个对象为瞬时/临时状态。

     持久化状态是指对象被持久化到Session对象被销毁之前的状态,此时对象在Session的缓存中。

         处在此状态的对象具备以下特点:

         1,在Session缓存中,与Session实例相关联。

         2,在数据库中有与之对应的记录。

         3,Session清理缓存的时候,会根据持久化对象的属性变化更新数据库。(比如spring 在service层管理事务,在Dao层更新实体对象后,

                 hibernate不会立马去更新数据库,而是等程序执行完Service层后,Hibernate才会去更新数据库。

    游离状态是指从持久化对象的Session对象被销毁到该对象消失之前的状态,此时对象不在Session的缓存中。


0 0