java面试题网

普通会员

217

帖子

75

回复

160

积分

楼主
发表于 2019-05-05 18:02:52 | 查看: 5507| 回复: 1

Hibernate对象的状态

Hibernate对象的状态

临时状态/瞬时状态(transient):刚刚用new语句创建,没有被持久化,无id

不处于session中(没有使用session的方法去操作临时对象),该对象成为临时对象

持久化状态,托管状态(persistent):已经被持久化,加入session的缓存中,session是没有关闭

该状态的对象为持久化对象。

游离状态,脱管状态(detached):已经被持久化,但不处于session中,该状态的对象为游离对象。

删除状态(removed):对象有关联的id,并且在session管理下,但是已经被计划(事务提交的时候,commit)删除,如果没有事务就不能删除

相互转换


文章来自www.wityx.com,转载请注明出处!原文地址http://www.wityx.com/post/734_1_1.html


java面试题交流群:327440556      阿里云产品2000元通用优惠券限时领

普通会员

115

帖子

83

回复

169

积分
沙发
发表于 2019-09-27 12:05:02

hibernate中对象的三种状态
瞬时态(临时态、自由态):不存在持久化标识 OID,尚未与 Hibernate Session 关联对象, 被认为处于瞬时态,失去引用将被 JVM 回收

持久态:存在持久化标识 OID,与当前 session 有关联,并且相关联的 session 没有关闭 , 并且事务未提交 

脱管态(离线态、游离态):存在持久化标识 OID,但没有与当前 session 关联,脱管状态 改变 hibernate 不能检测到

 

您需要登录后才可以回帖 登录 | 立即注册

java面试题网www.wuliaokankan.cnjava建站系统提供技术支持V2.1 网站地图 © 2016-2018