FetchType与FetchMode的区别
使用例:
@OneToMany(mappedBy="item",cascade=CascadeType.ALL,fetch=FetchType.EAGER)
@Fetch(value=FetchMode.SUBSELECT)
两者比较:
两者都是设定关联对象的加载策略。前者是JPA标准的通用加载策略注解属性,
后者是Hibernate自有加载策略注解属性。
FetchType可选值意义与区别如下:
FetchType.LAZY: 懒加载,在访问关联对象的时候加载(即从数据库读入内存)
FetchType.EAGER:立刻加载,在查询主对象的时候同时加载关联对象。
FetchMode可选值意义与区别如下:
@Fetch(FetchMode.JOIN): 始终立刻加载,使用外连(outer join)查询的同时加载关联对象,忽略FetchType.LAZY设定。
@Fetch(FetchMode.SELECT) :默认懒加载(除非设定关联属性lazy=false),当访问每一个关联对象时加载该对象,会累计产生N+1条sql语句
@Fetch(FetchMode.SUBSELECT) 默认懒加载(除非设定关联属性lazy=false),在访问第一个关联对象时加载所有的关联对象。会累计产生两条sql语句。且FetchType设定有效。
转载于:https://www.cnblogs.com/toSeeMyDream/p/4354386.html
FetchType与FetchMode的区别相关推荐
- hibernate 一对多 取多方数据重复问题,FetchMode.JOIN、FetchMode.SELECT、FetchMode.SUBSELECT区别
问题描述:稿件附件表数据时出现多条重复数据. 介绍: 表:稿件实体Manuscripts (数据库表MANUSCRIPTS),稿件附件实体ManuscriptsAtt(表MANUSCRIPTS_ATT ...
- ubuntu需要多大的固态硬盘_简单粗暴的更换固态硬盘及WIN10 Ubuntu双系统
简介:本文希望帮助如本人一样的计算机小白,能够以最快的速度更换固态硬盘及安装系统. 1.提前将准备空白U盘(至少8G),利用UltraISO工具,或者软媒魔方,制作U盘启动盘. PS:需提前下载好WI ...
- Java Persistence API中的FetchType LAZY和EAGER之间的区别?
我是Java Persistence API和Hibernate的新手. Java Persistence API中的FetchType.LAZY和FetchType.EAGER什么区别? #1楼 我 ...
- FetchType.LAZY和FetchType.EAGER什么区别
1.FetchType.LAZY:懒加载,加载一个实体时,定义懒加载的属性不会马上从数据库中加载.2.FetchType.EAGER:急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载.3. ...
- FetchType.LAZY和FetchType.EAGER什么区别?(懒加载和急加载的理解)
1.FetchType.LAZY:懒加载,加载一个实体时,定义懒加载的属性不会马上从数据库中加载. 2.FetchType.EAGER:急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载. ...
- Spring,FetchType.LAZY和FetchType.EAGER什么区别?
1.FetchType.LAZY:懒加载,加载一个实体时,定义懒加载的属性不会马上从数据库中加载. 2.FetchType.EAGER:急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载. ...
- fetchtype 动态控制_hibernate 关于 注解配置@Basic(fetch=FetchType.LAZY) 不起效果
intro字段配置成@Basic(fetch=FetchType.LAZY) 但是无论用get还是load方法,intro和其他字段都是一样加载的,和其他字段没有区别啊?配了和没配是一样的? 有没有人 ...
- CLOB与BLOB的区别及用途
BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的. 其实两个是可以互换的的,或者可以直接用LOB字段代替这两个.但是为了更好的管理 ORACLE数据库, 通 ...
- collection和association的区别
collection和association的使用区别 关联-association 集合-collection 比如同时有User.java和Card.java两个类 User.java如下: pu ...
最新文章
- Linux下图解minicom安装
- 需要搭建一个高性能的文件系统?我推荐你试试它.....
- 分享我们用Leangoo看板工具做的采购看板,超级好用
- String : string的长度?string的子串?
- Redis中的执行命令的过程
- 什么是Pro*C/C++,嵌入式SQL,第一个pro*c程序,pro*c++,Makefile,Proc增删改查
- 逆向-攻防世界-reverse-box
- 小程序app is not defined
- excel python插件_利用 Python 插件 xlwings 读写 Excel
- 工作283:抽离出新页面优化
- iOS学习——Socket
- 安装adt-bundle-windows-x86-20130917时遇到的问题及解决方法
- 解决php使用ZipArchive解压时中文乱码问题(纯php,绕开ZipArchive)
- 一场视频号裂变活动获客3W+,头部品牌裂变案例拆解
- mysql性能分析工具_MySQL性能分析、及调优工具使用详解
- 电脑内存与地址位数的关系
- 重臣遭遇中年危机?百度变狼 海龙被辞
- 独木带你玩转彩屏——应用1驱动彩屏(寄存器spi版)
- __CTOR_LIST__和__DTOR_LIST__解释
- python中extend什么意思_python中extend是什么意思
热门文章
- 【HDU - 1272】小希的迷宫 (并查集判环)
- matlab将模型解封装,模型保护
- MATLAB Simulink
- MathWorks 中国
- 用计算机唱出惊雷,除了《惊雷》还有多少喊麦神曲?这十首神作你一定听过!...
- linq判断集合中相同元素个数_JavaSe集合的概念以及集合框架介绍
- 函数库属于计算机的,API库函数
- java向Excel文件写入数据
- leetcode570. 至少有5名直接下属的经理(SQL)
- leetcode208. 实现 Trie (前缀树)
- 《C++ Primer 5th》笔记(4 / 19):表达式
- 《Python Cookbook 3rd》笔记(4.4):实现迭代器协议