hibernate中处理对象的transient、persistent、detached三种状态


        hibernate中处理对象的transient、persistent、detached三种状态
1、transient状态的特征:
  * 在数据库中没有与之匹配的数据
  * 没有纳入session的管理
  2、persistent状态的特征:
  * persistent状态的对象在数据库中有与之匹配的数据
  * 纳入了session的管理
  * 在清理缓存(脏数据检查)的时候,会和数据库同步
  3、detached状态的特征:
  * 在数据库中有与之匹配的数据
  * 没有纳入session的管理
Detached状态和Transient状态的差异
Transient(自由状态)状态的实体对象与库表中的记录无关,无法根据Transient对象中的信息在库中寻找到对应的记录
Detached(游离态)状态的对象,虽然与Session实例脱离,但是根据其中的信息,能够寻找到库中表对应的数据的记录。比如某表对应ID的库表记录已经删除,则此对象与库表中的记录已经不存在对应关系,因此,它处于Transient状态

本文转自www.35java.com

你可能感兴趣的:(Hibernate)