springboot-mybatis之二级缓存(注解方式)-随手记

springboot 自动开启了mybatis一级并支持二级缓存,mybatis的一级(session)和二级缓存(mapper-namespace)概念请自行了解。

接下来介绍下应用中如何配置开启和应用二级缓存:

1、在springboot 项目开发中首先pom.xml中添加mybatis依赖,我这里用的是通用mapper(和一般有所区别下面提到):

 

2、yml配置开启二级缓存:

mybatis:
  configuration:
    cache-enabled: true #开启应用mybatis二级缓存(mapper-namespace)

 

(ps:xml方式:mybaits-config.xml <settings><!-- 开启二级缓存,默认是false --><setting name="cacheEnabled" value="true"/</settings>

3、对象实现 java.io.Serializable,进行缓存和提取缓存数据需要进行序列化和反序列化(缓存在内存或硬盘)

4、在mapper接口添加应用缓存注解

(ps:xml方式   xxxxMapper.xml文件中使用<cache/>块,如果使用了通用mapper插件需要修改为<cache-ref namespace="....xxxMapper"/>,并在Mapper类使用注解@CacheNamespace)

4. 没有写单元测试,直接service 和controller

service如下

Controller如下

5、添加配置前测试结果:

两次查询输出sql

6、添加配置后测试结果:  缓存起作用第二次查询 从缓存取数据,Cache HIt Ratio

 

闲来咱也写写日记,老是有人问为啥人家都有你没有伯克利!!!

 

 

 


版权声明:本文为luning95原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。