我是靠谱客的博主 积极含羞草,最近开发中收集的这篇文章主要介绍mybatis的延迟加载,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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的延迟加载所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部