hibernate--对象的三种状态Transient,Persistent,Detached
2016-04-21 11:23
330 查看
Transient:刚new出来的对象
Persistent: sava或者update之后的状态
Detached: close或者clear之后
test函数:
3种状态的区分:
1. 有没有ID?
2. ID在数据库里有没有?
3. ID在内存里有没有?
transient: 内存中的一个对象, 没ID,缓存里也没有
persistent:内存里有, 缓存有, 数据库有, 有ID
detached:内存有, 缓存没有, 数据库有,有ID
Persistent: sava或者update之后的状态
Detached: close或者clear之后
test函数:
@Test public void testSaveWith3State() { Teacher t = new Teacher(); t.setName("t1"); t.setTitle("middle"); t.setBirthDate(new Date()); //此时t是transient状态 Session session = sessionFactory.getCurrentSession(); session.beginTransaction(); session.save(t); System.out.println(t.getId()); //此时是persistent状态 session.getTransaction().commit(); System.out.println(t.getId()); //此时是detached状态 }
3种状态的区分:
1. 有没有ID?
2. ID在数据库里有没有?
3. ID在内存里有没有?
transient: 内存中的一个对象, 没ID,缓存里也没有
persistent:内存里有, 缓存有, 数据库有, 有ID
detached:内存有, 缓存没有, 数据库有,有ID
相关文章推荐
- java写单例模式
- Java开发 - 异常 - 抛出异常
- git初建立服务器的几个问题
- php设计模式 单例模式
- 常用学习网址
- Hadoop安装与启动(CDH5.6)
- ajax写法
- BootStap学习笔记(2)
- c++第四次实验
- Nexus
- IE浏览器中文档模式Quirks Model改为IE标准模式
- PDO 指南
- Struts1、Struts2和SpringMVC
- 内存管理 进程 线程
- Java开发 - 异常 - 抛出异常
- CentOS6.4 配置Tengine(转)
- 前端进阶-让你升级的网络知识
- SQLite数据库总结
- 剑指offerr面试题 调整数组顺序使奇数位于偶数前面
- php设计模式 策略模式。