hibernate实体对象的三种状态:自由状态,持久状态,游离状态.

来源:互联网 发布:springmvc 项目源码 编辑:程序博客网 时间:2024/04/30 08:14

转载至: http://www.cnblogs.com/newlooker/archive/2012/12/11/2813442.html

hibernate实体对象的三种状态:自由状态,持久状态,游离状态.

 

自由态与游离态的区别:

当一个持久化对象,脱离开Hibernate的缓存管理后,它就处于游离状态,游离对象和自由对象的最大区别在于,游离对象在数据库中可能还存在一条与它 对应的记录,只是现在这个游离对象脱离了Hibernate的缓存管理,而自由对象不会在数据库中出现与它对应的数据记录

 

 

(1)自由状态(Transient)

特性:

①不在Session的缓存中,不与任何的Session实例相关联。

②在数据库中没有与之相对应的记录。

(2)持久状态(Persistent)

特性

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

②在数据库中存在与之相对应的记录。

( 3 ) 游离状态(Detached)/脱管状态

特性

①不在Session的缓存中,不与任何的Session实例相关联。

②在数据库中存在与之相对应的记录。(前提条件是没有其他Session实例删除该条记录)。

0 0
原创粉丝点击