持久化对象的生命周期
来源:互联网 发布:c语言符号表 编辑:程序博客网 时间:2024/06/06 01:24
先来看一下持久化对象生命周期的图:
应用程序运行过程中,系统使用对象的方式对数据库进行操作,这必然会产生一系列的持久化类的实例对象。为了区分这些对象,我们根据对象和当前会话的关联状态,可以分为三种情况。
三种状态的的对象:
1.暂停对象(Transient Object)
对象刚刚建立,还没有使用Hibernate进行保存。
该对象在数据库中没有记录,也不在session缓存中。
如果该对象是自动生成主键,则该对象的对象标识符为空。
2.持久化对象(Persistent Object)
对象已经通过Hibernate进行了持久化。
数据库中已经存在对应的记录,且在session缓存中。
如果该对象是自动生成主键,则该对象的对象标识符已被赋值。
3.离线(脱管)对象(Detached Object)
该对象是经过Hibernate保存过或者从数据库中取出的,但是与之关联的session已经被关闭。
数据库中已经存在对应的记录,但不在session缓存中。
如果该对象是自动生成主键,则该对象的对象标识符已被赋值。
代码示例(通过下面的示例,了解一下各个状态都处于什么时刻):
public void testSave1() {Session session = null;Transaction tx = null;try {session = HibernateUtils.getSession();tx = session.beginTransaction();//Transient状态User user = new User();user.setName("张三");user.setPassword("123");//Persistent状态session.save(user);tx.commit();}catch(Exception e) {e.printStackTrace();if (tx != null) {tx.rollback();}}finally {HibernateUtils.closeSession(session);}//detached状态}
- 持久化对象的生命周期
- 持久对象的生命周期
- 持久化对象生命周期
- Hibernate持久化对象的生命周期(lifecycle)
- Hibernate 持久化对象的生命周期
- Hibernate持久化对象的生命周期详解
- Hibernate 持久化对象的生命周期
- hibernate中持久化对象的生命周期
- Hibernate持久化对象的生命周期
- 持久化对象的生命周期[hibernate]
- Hibernate持久化对象的生命周期详解
- Hibernate持久化对象的生命周期详解
- Hibernate_持久化对象的生命周期
- Hibernate持久化对象的生命周期
- Hibernate持久化对象的生命周期
- 持久对象的生命周期介绍
- 持久化对象生命周期管理
- hibernate 持久化对象生命周期
- 广州软件测试俱乐部2期圆桌会议圆满结束
- 利用fiddler工具调试android应用发送HttpURLConnection请求
- Perl 学习笔记 --- 16
- 详解包含、扩展和泛化
- \latex 居中与缩进
- 持久化对象的生命周期
- jQuery上传文件插件AjaxFileUpload的使用
- Android开发一:开发环境搭建
- JUnit简介
- 备忘录:推荐13款JavaScript图形和图表绘制工具
- 非汇编指令实现 显示 整型,浮点型, 正负数的32位补码
- hdu2112 最短路+map
- 用MyEclipse部署SSH框架
- 程序莫名其妙的错误,怎么办?