hibernate加载持久化对象的两种方式---------------load方式和get方式
2019独角兽企业重金招聘Python工程师标准>>>
参考:http://my.oschina.net/u/1169535/blog/282483
1. Hibernate get方法
Hibernate确认该id对应的数据是否存在,首先在session缓存中查找,然后在二级缓存中查找,还没有就查询数据库,数据库中没有就返回null。
2. Hibernate load方法
加载实体对象的时候,根据映射文件上类级别的lazy属性的配置(默认为true),分情况讨论:
(1)若为true,则首先在Session缓存中查找,看看该id对应的对象是否存在,不存在则使用延迟加载,返回实体的代理类对象(该代理类为 实体类的子类,由CGLIB动态生成)。等到具体使用该对象(如在访问延迟加载对象的具体属性的时候(getClass,getId,OID除外))的时候,再查询二级缓存和数据库,若仍没发现符合条件的记录,则会抛出一 个ObjectNotFoundException。
(2)若为false,与Hibernate get方法查找顺序一样,只是最终若没发现符合条件的记录,则会抛出一个ObjectNotFoundException。
详见:http://www.zgxue.com/163/1633214.html
转载于:https://my.oschina.net/u/1989867/blog/526586
hibernate加载持久化对象的两种方式---------------load方式和get方式相关推荐
- (9) hibernate加载持久化对象的两种方式——get、load
一.get与load对比 在hibernate中get和load方法是根据id取得持久化对象的两种方法,但在实际使用的过程中总会把两者混淆,不知道什么情况下使用get好,什么时候使用load方法效率更 ...
- Python加载csv文件的两种方式
本文主要讲解下Python加载csv文件的两种方式,如果知道如何处理的就不必往下看了! 下面来简单介绍下. 实例中的数据集是kaggle的Digit Recognizer的train.csv文件,数据 ...
- Spring加载properties文件的两种方式
2019独角兽企业重金招聘Python工程师标准>>> 在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取pro ...
- Android加载GIF图片的两种方式
飞哥语录:得到一件东西最好的方式是让自己配得上它. 方式一:使用第三开源框架直接在布局文件中加载gif 1.在工程的build.gradle中添加如下 buildscript {repositorie ...
- HTML5动态加载资源方式,动态加载JavaScript文件的两种方法
这篇文章主要为大家详细介绍了动态加载JavaScript文件的两种方法,感兴趣的小伙伴们可以参考一下 第一种便是利用ajax方式,把script文件代码从背景加载到前台,而后对加载到的内容经过eval ...
- vue中使用动态添加路由(router.addRoutes)加载权限侧边栏的两种方式
工作中我们经常会遇到这种需求,后台定义用户的权限数据,前端进行获取,并渲染在侧边栏导航上,不同权限的用户看到的侧边栏是不同的.即前端渲染的数据是随着后台的改变而改变的,做到真正的前后端分离. 一.拿到 ...
- js如何将数据放在一个内置窗口里面_Java 爬虫遇上数据异步加载,试试这两种办法!...
这是 Java 爬虫系列博文的第三篇,在上一篇 Java 爬虫遇到需要登录的网站,该怎么办? 中,我们简单的讲解了爬虫时遇到登录问题的解决办法,在这篇文章中我们一起来聊一聊爬虫时遇到数据异步加载的问题 ...
- java 爬虫 异步_Java 爬虫遇上数据异步加载,试试这两种办法!
这是 Java 爬虫系列博文的第三篇,在上一篇 Java 爬虫遇到需要登录的网站,该怎么办? 中,我们简单的讲解了爬虫时遇到登录问题的解决办法,在这篇文章中我们一起来聊一聊爬虫时遇到数据异步加载的问题 ...
- JAVA异步爬虫_Java 爬虫遇上数据异步加载,试试这两种办法!
这是 Java 爬虫系列博文的第三篇,在上一篇 Java 爬虫遇到需要登录的网站,该怎么办? 中,我们简单的讲解了爬虫时遇到登录问题的解决办法,在这篇文章中我们一起来聊一聊爬虫时遇到数据异步加载的问题 ...
最新文章
- Android 阻隔返回键
- 机器学习系列3:能量函数分析
- autocad2014 第二次打开闪退_cad2014闪退的原因和解决方法
- BitArray虽好,但请不要滥用,又一次线上内存暴增排查
- Spark基础学习笔记09:Scala变量与数据类型
- php ios支付宝不回调,支付宝 支付成功 ios 不回调
- (转)Linux传输大文件(分割传输)
- Spring 应用开发框架 Spring Boot 2.3.0 最新版本发布
- 【毕业设计/课程设计】基于python的微信公众平台机器人的设计与实现
- 分类模型confusion matrix混淆矩阵可视化
- 我也来谈谈《我不是药神》这部电影
- 达内java月考_达内java5.第二次月考(附答案)..doc
- Matlab笔记 第二章 基本操作与矩阵输入
- 进程、线程、协程、管程
- 如何获取当前地址以及天气温度情况,适用于微信小程序(端午假期将至,祝愿大家端午快乐)
- 为什么 APISIX Ingress 是比 Traefik 更好的选择?
- Linux组件被爆漏洞,程序员:过年修复漏洞
- python实现数据归一化处理的方式:(0,1)标准化
- 《道德经》第三十九章
- 快速上手docker-java,示例全网最全,带你踩坑,带你飞
热门文章
- (007) java后台开发之Scanner报错java.util.NoSuchElementException
- excel函数大全_让你的EXCEL工作效率翻倍的函数大全
- Android Studio教程10-Intent的详细使用
- Halcon中数据的四舍五入、取整、有效数字以及和字符串之间的转换
- Intellij IDEA eclipse项目导入
- static_cast, dynamic_cast, const_cast
- hadoop过程中遇到的错误与解决方法
- MySQL测试环境遇到 mmap(xxx bytes) failed; errno 12解决方法
- Oracle安装ORA-12154和ORA-12169问题的解决
- 彻底解决兼容问题 Windows 7 安装 Visual C++ 6.0 (VC6) 全程图解