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.压测结果:二级缓存命中
一点点学习,一丝丝进步。不懈怠,才不会被时代淘汰