mybatis二级缓存
配置:1.xml里面使用cache标签 2.useCache设置true 3.开启mybatis二级缓存属性设置true.
我这里是用的
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.1</version>
</dependency>
这连个版本进行的分析,各版本略有差异,整体逻辑都是一样的



2.查询执行流程:




3.获取缓存流程 tcm就是存放二级缓存的地方 主要用到MybatisCachingExecutor 里面的private final TransactionalCacheManager tcm = new TransactionalCacheManager()进行缓存,查询用到的试试MybatisCachingExecutor::query()方法



2.3的整体流程是
1、创建一级缓存的CacheKey
2、获取二级缓存
3、如果没有获取到二级缓存则执行被包装的Executor对象中的query方法,此时会走一级缓存中的流程。
4、查询到结果之后将结果进行缓存。
4.压测结果:二级缓存命中

本文来自博客园,作者:余生请多指教ANT,转载请注明原文链接:https://www.cnblogs.com/wangbiaohistory/p/15819729.html

浙公网安备 33010602011771号