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原理与应用(三)相关推荐

  1. 2011级-csdn-java-张侃— Hibernate原理与应用(二)

    基本概念和CURD 开发流程 1.由Domain object -> mapping->db.(官方推荐) 2.由DB开始,用工具生成mapping和Domain object.(使用较多 ...

  2. 2011级-csdn-java-张侃— Hibernate原理与应用(一)

    l      Hibernate是一个开源ORM框架. l      ORM全称Object Relation Mapping,即对象关系映射.它是一种用来完成对象模型到关系模型的映射技术. •    ...

  3. Java NIO使用及原理分析(三)

    2019独角兽企业重金招聘Python工程师标准>>> 转载自:李会军•宁静致远 在上一篇文章中介绍了缓冲区内部对于状态变化的跟踪机制,而对于NIO中缓冲区来说,还有很多的内容值的学 ...

  4. 2011级-csdn-java-张侃—第十一周周报

    河软CSDN乐知学院 学员周学习总结 姓名 张侃 周次 11 方向 Java 内 容 本周学习知识点: EL表达式简介 面向对象的程序设计模式 自定义JSP标签 本周学习收获: EL表达式简介 EL表 ...

  5. Java基础之Hibernate

    Hibernate是一个什么样的框架? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hi ...

  6. 使用Intellij idea新建Java Web项目(servlet) 原理及初步使用

    准备 JDK       (配置JDK_HOME\bin   和 CLASSPATH)   注:JDK8下载已经需要注册了,请使用JDK11(现在是官方长期支持的版本)     对于我们新手来说,JD ...

  7. 【有料】Java线程池实现原理及其在美团业务中的实践

    随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流.使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器.J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员 ...

  8. spring原理 struts2原理 hibernate原理 MyBatis原理 SpringMVC

    Spring原理 最核心的就是IOC,动态注入DI,利用java里的反射,让一个对象的创建不用new了,可以自动的生产.Spring就是在运行时,跟xml Spring的配置文件来动态的创建对象,和调 ...

  9. 2011年度CSDN高校俱乐部“优秀主席”火热出炉

    2011年,CSDN高校俱乐部取得了骄人的成绩:举办全国高校巡讲.移动互联网应用创新大赛.星空大赛等技术活动100余场,覆盖全国高校50余所,辐射学生45000余人.活动效果获得了学校领导.老师和学生 ...

最新文章

  1. LINUX下PHP使用PDO访问MYSQL的连接设置注意事项
  2. Django 静态资源路径问题(一)
  3. 简谈TCP的八个特性
  4. golang GOPROXY及GOPRIVATE的设置及作用
  5. boot nk.bin by CEPC
  6. Extjs发票管理系统
  7. PHP框架编写和应用知识点,php框架知识点的整理和补充
  8. php word 数学公式,如何在word中输入复杂的数学公式? 详细始末
  9. Python源码深度解析—引用计数
  10. MySQL max_allowed_packet
  11. 页面静态化3 --- 伪静态技术
  12. vue引入阿里矢量图标库
  13. matlab动态电路仿真,matlab电路仿真教程
  14. 智能小区计算机网络系统,智能住宅小区综合布线系统方案
  15. 2020数学建模B题
  16. java -ex_exJava
  17. 1.488Mpps是如何计算出来的
  18. win10解决设置默认打开方式不生效问题(双击每次都要选择默认打开程序)
  19. 调用百度自然语言接口实现文本分析
  20. 迁移学习domain adaption

热门文章

  1. Go 实现aes-256-gcm加解密处理过程
  2. 动态规划漫谈(面向初学者的自学总结)
  3. 5G 建设拉动光模块量价齐升
  4. 0基础学习建模,3D次世代MAYA游戏角色建模的方法
  5. 什么是 IP地址 NAT 公网 内网 端口
  6. 如何从 Apache 和 NGINX 服务器的日志文件中提取 IP 地址
  7. 大会前瞻 | 电价有望大幅降低!来看这家企业如何用区块链改造电力市场
  8. Oracle数据库用户管理之二---权限授权去权(用户和角色)
  9. 整理总结:《量化炼金术:中低频量化交易策略研发》
  10. 还怕学不会数据库sql语句吗??