Hibernate 三种状态理解及转换
首先先说下hibernate中的三个状态,只有完全理解了这三个状态,才能在项目中充分利用hibernate这个工具来完成项目进度。
1、瞬时态,也叫临时态等,不受hibernate session管制的状态,即某个实例跟session没有任何关联,比如new产生的实例。
2、持久态,session中持久化了的实例,相当于数据库中的记录,修改实例的任何属性都会导致数据库记录的变更。
3、托管态,也叫游离态等,持久化对象脱离了Session的对象。如Session缓存被清空的对象。特点:已经持久化,但不在Session缓存中。处于此状态的对象叫游离对象。
下边用张图表示三个状态之间的转换关系:
顺便补充下持久态跟托管态的区别:
持久态:修改实例属性会引起数据库对应记录的变更
托管态:修改实例属性不会引起数据库对应记录的变更
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。