Mybatis中的缓存相关简介说明

书欣 MyBatis 发布时间:2022-09-14 15:39:25 阅读数:8557 1
下文笔者讲述Mybatis缓存的相关简介说明,如下所示

缓存简介

 在mybatis中将数据存储到内存中
 这种操作,我们称之为“缓存”

mybatis使用缓存的优点

 
 使用缓存可减少同数据库的通信次数
 提高程序的效率,减少系统的开销

适用缓存的场景

  
适用于缓存:
   常查询并且不经常改变的并且数据的对错对业务影响不大

不适用于缓存:
    经常变动的数据,数据对错对系统的影响非常大 
    如:商品库存、银行汇率、股市牌价-这种数据绝对不能缓存

Mybatis中一级缓存和二级缓存简介

一级缓存
指Mybatis中SqlSession对象的缓存
当我们执行查询之后,查询结果会同时存入到SqlSeesion为我们提供一块区域中
   该区域的结构是一个Map。
 当我们再次查询同样的数据,Mybatis会先去sqlseesion中查询是否存在,如果存在,则直接使用,
 当SqlSeesion对象消失时,Mybatis的一级缓存随即消失
 一级缓存是SqlSession范围的缓存
    当调用SqlSession的修改,添加,删除,commit(),close(),等方法时,都会清空一些缓存
二级缓存
 二级缓存:
   是mapper级别的缓存
   多个SqlSession去操作同一个Mapper的sql语句
   多个SqlSession可以共用二级缓存,二级缓存是跨SqlSession

UserMapper有一个二级缓存区域(按namespace分)
  其它mapper也有自己的二级缓存区域(按namespace分)
  每一个namespace的mapper都有一个二级缓存区域,
  当两个mapper的namespace如果相同,这两个mapper执行sql查询到数据将存在相同的二级缓存区域中。
二级缓存
指Mybatis中SqlSession中SqlSessionFactory对象的缓存
由同一个SqlSessionFactory对象创建的SqlSession共享其缓存

二级缓存的使用步骤

步骤1:
  让Mybatis框架支持二级缓存(在SqlMapConfig.xml中配置)

步骤2:
  让当前的映射文件支持二级缓存(在IUserDao.xml中配置)

步骤3:
  让当前的操作支持二级缓存(在select标签中配置)
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/MyBatis/202209/4422.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者