Hibernate的对象状态是什么?并做详细说明
Hibernate的对象状态其实就是session中持久化类的实例的对象状态,了解了持久化类的状态,才可以正确的运用session中的方法。
Hibernate的对象状态为瞬时状态、持久状态、脱管状态
(1)瞬时状态
该实例是刚用new语句创建的,还没有被持久化,不处于任何session的缓存中,它没有对象标识符值。如果没有变量对该对象进行引用,它将被java虚拟机回收。
特点:不跟任何一个Session实例关联,在数据库中没有任何对应的记录
(2)持久状态
已经被持久化,加入到session缓存中,实例目前与某一个session有关联,它拥有对象标识符值,并且可能在数据库中有一个对应的行,Hibernate保证在同一个session实例的缓存中,数据库中的每一条记录只对应唯一的持久化对象
特点:持久化对象总是被一个session实例关联,持久化实例和数据库的相关记录对应,session清理缓存时,会根据持久化实例的属性数据变化,同步更新数据库,总结一句话就是:和session实例关联,在数据库中有对应的记录
(3)脱管状态
已经被持久化过,但已经不处于session缓存中,实例曾经与某一个session上下文发生过关联,不过与某持久对象关联的session被关闭了,它拥有对象表示符值,并且在数据库中可能存在一个对应的行
特点:
1.不再位于session缓存中,即它不再和session关联
2.本质上与瞬时对象相同,在没有任何变量引用它时,JVM会在适当的时候将它回收;
3.比瞬时对象多了一个数据库记录标识值
分享到:
相关推荐
Hibernate面试题-详尽解析,是本人搜集的一套有关hibernate的典型面试题,并对里面所有题目,经多方搜集和学习,做了详尽解说,部分附有代码说明。
Hibernate面试题专栏 - 最全的Hibernate面试题, Hibernate笔试题, Hibernate问题 Hibernate教程
Hibernate面试题部分汇总集合Hibernate面试题部分汇总集合
hibernate面试题总结
hibernate 面试题,让你了解面试!
hibernate面试题.doc.
Hibernate常见面试题,总结了各个公司关于hibernate的常见面试题
Hibernate常见面试题汇总 Hibernate常见面试题汇总
hibernate框架面试题,总结的几道面试题,可以看看hibernate框架面试题,总结的几道面试题,可以看看
常见hibernate面试题.doc ======================
Hibernate面试题及答案大集合
hibernate经典面试题,网上转载收集
hibernate面试题大全,供面试用。
struts spring hibernate面试题 struts spring hibernate面试题 struts spring hibernate面试题 struts spring hibernate面试题 struts spring hibernate面试题 struts spring hibernate面试题 struts spring ...
Java面试题57.hibernate对象状态及其转换 Java面试题58:hibernate的缓存 Java面试题59.webservice的使用场景 Java面试题60.activiti的简单介绍 Java面试题61.linux的使用场景 Java面试题62.linux常用命令 Java面试...
.net面试题,PHP面试题,数据库面试题,英语面试,外企面试,软件测试面试题,Python面试题,Oracle面试题,MySql面试题,Web开发面试题,Unix面试题,程序员面试,网络技术面试题,网络安全面试题,Linux面试题,Hibernate面试题,...
1. Hibernate 的检索方式有哪些 ? 2. 在 Hibernate 中 Java 对象的状态有哪些 ? 3. Session的清理和清空有什么区别? 4. load()和get()的区别 5. hibernate 优缺点......
老师精心总结的关于面试过程中有可能遇到的hibernate的面试题 关于hibernate的总结,用于个人学习和面试之用
Hibernate面试测试题