笔记:
<class name="Student" table="student" >
<id name="studentNO" type="int">
<generator class="native"></generator>
</id>
<property name="studentName" type="string"/>
<many-to-one name="classes" column="classNO" class="Classes" fetch="join" lazy="false"></many-to-one>
</class>
当用load方法加载Student时,会延时加载
当不设fetch=join用lazy=true时:
对于many-to-one,one-to-one,集合如component,set,map,array,list这些本身默认lazy=true的属性,不管是load还是get,表现出来的都是使用classes时才加载,看上去get在这里也是延时加载了,可见延不延时加载在此时只是针对当前对象的普通属性。但是当lazy=false时,这些属性,不管是load还是get都是都是同时发出两条sql,尽管load方法是在使用当前对象时才发出sql,而get是在一执行时就发出2条sql。
当设fetch=join时
查询student时,会同时查出classes,而且是通过一条连接查询实现,这个时候集合属性里面的lazy就没有作用了。
对于load会在使用student或classes时,发出sql,对于get会在执行进就发出sql
-
Join fetching
- Hibernate retrieves the
associated instance or collection in the same SELECT
,
using an OUTER JOIN
.用外连接检索相关的实例或集合,通过一条select语句(实了下,发现是左外连接)
-
Select fetching
- a second SELECT
is used to retrieve the associated entity or
collection. Unless you explicitly disable lazy fetching by specifying lazy="false"
, this second select will only be executed when
you actually access the association.通过第二条select语句检索相关的实体或集合,但是前提lazy=false,并且只有在访问相关数据时才会发出第二条sql
分享到:
相关推荐
hibernate的类级别检索策略和检索策略的lazy、fetch、batch-size属性使用
主要介绍了hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法,需要的朋友可以参考下
Hibernate环境搭建 Hibernate主要接口 Hibernate主要映射 Hibernate的lazy、fetch、cascade等策略 Hibernate性能优化
您将学到什么使用$fetchState在客户端获取数据时显示漂亮的占位符使用keep-alive和activated钩子在已经访问过的页面上有效地缓存API请求使用this.$fetch()重用fetch钩子this.$fetch() 设置fetchOnServer值来控制何时...
Hibernate fetch lazy cascade inverse 关键字
export const useInfiniteScroll = ( { element , fetch } ) => { const loader = useRef ( fetch ) ; const observer = useRef ( new IntersectionObserver ( ( entries ) => { const first = entries [ 0 ] ; if ...
<many-to-one name="systemSpecialtyCode" class="com.hibernate.model.SystemSpecialtyCode" fetch="select" lazy="false"> ...
# Fetch the dependencies. npm install # Run the tests. npm test 检查测试和源( lazy-array.js )JSDoc以获得更多信息,这是一个简单的示例。 var larr = require ( 'lazy-array' ) ; var plainArray = [ '...
<many-to-one name="dept" class="org.wllt.www.po.Dept" fetch="select" cascade ="none" lazy ="proxy"> </property> Hibernate映射一对一(通过主键实现一对一的关系) //主PO对象...
在后台,它使用Worker和fetch API 将Blob对象检索到主线程,以便由URL API、 FileReader实例等使用... 查看“部分以获取库兼容性。 方法 拿来 此方法获取给定的资源并将其作为Blob对象返回。 它传递了以下参数: ...
cross-fetch(浏览器和node通用的Fetch API) express(后端服务) 实现功能 首页 分类页 排行榜 搜索 视频详情页 1.视频播放 2.弹幕 3.推荐列表 4.评论列表 UP主页 1.详情 2.投稿列表 个人中心 历史记录 直播 直播列表 ...
helmet(Head管理)react-lazyload(图片懒加载)loadable-components(代码分割)cross-fetch(浏览器和node通用的Fetch API)express(后端服务)实现功能首页分类页排行榜搜索视频详情页1.视频播放2.弹幕3.推荐列表4.评论...
@ManyToOne(cascade = {CascadeType.ALL}, fetch = FetchType.LAZY) @JoinColumn(name = "personid", unique = false, nullable = true, insertable = true, updatable = true) public Person getPerson() { ...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
7.3.3 Lazy Loading和Proxy模式 7.3.4 Identity Map模式 7.3.5 Query Object模式 7.4 使用对象关系映射器 7.4.1 NHibernate 7.4.2 MS Entity Framework 7.4.3 ORM代码示例 7.5 小结 第8章 表示层 8.1 ...
Integration of the Cordova iBeacon plugin which will fetch contextual data on the basis of location and Websockets for real time communication for IOT based applications Implementation of offline ...