概述
1.延迟加载是什么
延迟加载其实就是将数据加载时机推迟,比如推迟嵌套查询的执行时机。
2.为什么要进行延迟加载
在Mybatis中经常用到关联查询,但是并不是任何时候都需要立即返回关联查询结果。比如查询订单信息,并不一定需要及时返回订单对应的产品信息,查询商品分类信息并不一定要及时返回该类别下有哪些产品,这种情况一下需要一种机制,当需要查看时,再执行查询,返回需要的结果集,这种需求在Mybatis中可以使用延迟加载机制来实现。延迟加载可以实现先查询主表,按需实时做关联查询,返回关联表结果集,一定程度上提高了效率。
3.如何进行延迟加载
首先要开启Mybatis对延迟加载的支持
根据官方文档的描述,在mybatis的配置文件中开启延迟加载
<settings>
<!--开启二级缓存-->
<setting name="cacheEnabled" value="true"/>
<!--开启mybatis支持延迟加载-->
<setting name="lazyLoadingEnabled" value="true"/>
<!--false表示按需加载,true表示立即加载-->
<setting name="aggressiveLazyLoading" value="false"/>
</settings>
既然是管理查询,那么肯定在一个实体类中有其他实体类的映射
import java.io.Serializable;
import java.util.List;
/**
* Created on 16:12 23/11/2019
* Description:
* user的实体类
*
* @author Weleness
*/
public class User implements Serializable {
private Integer id;
private String username;
private String password;
//一对多关系映射
private List<Account> account;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername(<
最后
以上就是积极含羞草为你收集整理的mybatis的延迟加载的全部内容,希望文章能够帮你解决mybatis的延迟加载所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复