hibernate 的三种状态
来源:互联网 发布:it培训学校排名 编辑:程序博客网 时间:2024/05/22 16:52
hibernate的对象有3种状态,分别为:瞬时态(Transient)、持久态(Persistent)、脱管态(Detached).处于持久态的对象也称为PO(PersistenceObject),如图
临时状态:即Person person = new Person(),创建一个新对象,该对象没有与session进行交互,没有被调用的话就会随时间被java 的垃圾回收机制给收回。我们可以通过session.save来进行保存
持久状态 : 处于该状态的对象在数据库中具有对应的记录,并拥有一个持久化标识.如果是用hibernate的delete()方法,对应的持久对象就变成瞬时对象,因数据库中的对应数据已被删除,该对象不再与数据库的记录关联.
当一个session执行close()或clear()、evict()之后,持久对象变成脱管对象,此时持久对象会变成脱管对象,此时该对象虽然具有数据库识别值,但它已不在HIbernate持久层的管理之下.
持久对象具有如下特点:
1.和session实例关联;
2.在数据库中有与之关联的记录
游离状态:
持久化对象脱离了Session后的对象。如Session缓存被清空后的对象。已经持久化,单不存在于Session中——此状态中的对象为游离对象。
2,三种状态的区分:
(1)对象有没有Id——如果没有Id,一定是Transient状态
(2)Id在数据库中有没有
(3)在内存中有没有(session缓存)
0 0
- hibernate的三种状态
- Hibernate的三种状态
- hibernate的三种状态
- Hibernate的三种状态
- hibernate 的三种状态
- hibernate的三种状态
- Hibernate的三种状态
- Hibernate的三种状态
- hibernate的三种状态
- hibernate的三种状态
- Hibernate的三种状态
- Hibernate的三种状态
- Hibernate 的三种状态
- Hibernate 的三种状态
- Hibernate的三种状态
- hibernate的三种状态
- hibernate的三种状态
- Hibernate的三种状态
- 如何获取textarea中的内容?innerhtml、innerText还是value?
- 谷哥的小弟学后台(21)——DBUtils
- Crackme 21
- 使用FileSystem自带的api读取hdfs中的文件
- AWT与Swing
- hibernate 的三种状态
- 蓝桥杯入门4题
- C语言return陷阱小结
- 关于Cocos2d-x2.2.6中SimpleAudioEngine的问题
- 开发环境搭建(安装JDK,Tomcat、eclipse、maven)
- [THUWC]菜鸡旅游记
- redirect与forward的区别
- AccessibilityService——实现自动遍历点赞功能
- mariadb数据库的安装和简单配置