2011级-csdn-java-张侃— Hibernate原理与应用(三)
Myeclipse开发hibernate
对象状态
l 瞬时(transient):数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来且与session没有关联的对象。
l 持久(persistent):数据库中可能有数据与之对应,当前与session有关联,并且相关联的session没有关闭,事务没有提交;持久对象状态发生改变,在事务提交时会影响到数据库(hibernate能检测到)。
l 脱管(detached):数据库中可能有数据与之对应,但当前没有session与之关联;托管对象状态发生改变,hibernate不能检测到。
对象状态的总结
操纵持久化对象-save()
Session 的 save() 方法使一个临时对象转变为持久化对象
Session 的 save() 方法完成以下操作:
l 把 News 对象加入到 Session 缓存中, 使它进入持久化状态
l 选用映射文件指定的标识符生成器, 为持久化对象分配唯一的 OID. 在使用代理主键的情况下, setId() 方法为 News 对象设置 OID 使无效的.
l 计划执行一条 insert 语句,把Customer对象当前的属性值组装到insert语句中
l Hibernate 通过持久化对象的 OID 来维持它和数据库相关记录的对应关系. 当 News 对象处于持久化状态时, 不允许程序随意修改它的 ID
操纵持久化对象-update()
Session 的 update() 方法使一个游离对象转变为持久化对象, 并且计划执行一条 update 语句.
操纵持久化对象-saveOrupdate()
saveOrUpdate:
该方法同时包含save和update方法,如果参数是临时对象就用save方法,如果是游离对象就用update方法,如果是持久化对象就直接返回。
2011级-csdn-java-张侃— Hibernate原理与应用(三)相关推荐
- 2011级-csdn-java-张侃— Hibernate原理与应用(二)
基本概念和CURD 开发流程 1.由Domain object -> mapping->db.(官方推荐) 2.由DB开始,用工具生成mapping和Domain object.(使用较多 ...
- 2011级-csdn-java-张侃— Hibernate原理与应用(一)
l Hibernate是一个开源ORM框架. l ORM全称Object Relation Mapping,即对象关系映射.它是一种用来完成对象模型到关系模型的映射技术. • ...
- Java NIO使用及原理分析(三)
2019独角兽企业重金招聘Python工程师标准>>> 转载自:李会军•宁静致远 在上一篇文章中介绍了缓冲区内部对于状态变化的跟踪机制,而对于NIO中缓冲区来说,还有很多的内容值的学 ...
- 2011级-csdn-java-张侃—第十一周周报
河软CSDN乐知学院 学员周学习总结 姓名 张侃 周次 11 方向 Java 内 容 本周学习知识点: EL表达式简介 面向对象的程序设计模式 自定义JSP标签 本周学习收获: EL表达式简介 EL表 ...
- Java基础之Hibernate
Hibernate是一个什么样的框架? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hi ...
- 使用Intellij idea新建Java Web项目(servlet) 原理及初步使用
准备 JDK (配置JDK_HOME\bin 和 CLASSPATH) 注:JDK8下载已经需要注册了,请使用JDK11(现在是官方长期支持的版本) 对于我们新手来说,JD ...
- 【有料】Java线程池实现原理及其在美团业务中的实践
随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流.使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器.J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员 ...
- spring原理 struts2原理 hibernate原理 MyBatis原理 SpringMVC
Spring原理 最核心的就是IOC,动态注入DI,利用java里的反射,让一个对象的创建不用new了,可以自动的生产.Spring就是在运行时,跟xml Spring的配置文件来动态的创建对象,和调 ...
- 2011年度CSDN高校俱乐部“优秀主席”火热出炉
2011年,CSDN高校俱乐部取得了骄人的成绩:举办全国高校巡讲.移动互联网应用创新大赛.星空大赛等技术活动100余场,覆盖全国高校50余所,辐射学生45000余人.活动效果获得了学校领导.老师和学生 ...
最新文章
- LINUX下PHP使用PDO访问MYSQL的连接设置注意事项
- Django 静态资源路径问题(一)
- 简谈TCP的八个特性
- golang GOPROXY及GOPRIVATE的设置及作用
- boot nk.bin by CEPC
- Extjs发票管理系统
- PHP框架编写和应用知识点,php框架知识点的整理和补充
- php word 数学公式,如何在word中输入复杂的数学公式? 详细始末
- Python源码深度解析—引用计数
- MySQL max_allowed_packet
- 页面静态化3 --- 伪静态技术
- vue引入阿里矢量图标库
- matlab动态电路仿真,matlab电路仿真教程
- 智能小区计算机网络系统,智能住宅小区综合布线系统方案
- 2020数学建模B题
- java -ex_exJava
- 1.488Mpps是如何计算出来的
- win10解决设置默认打开方式不生效问题(双击每次都要选择默认打开程序)
- 调用百度自然语言接口实现文本分析
- 迁移学习domain adaption