springboot mybatis 开启二级缓存

本文详细介绍了在SpringBoot项目中使用MyBatis的二级缓存配置步骤,包括在mapper的xml文件中配置cache节点,如何指定查询语句不走缓存,以及实体类实现序列化的必要性。

springboot mybatis 开启二级缓存 步骤:

1.我们要在mapper的xml文件下配置cache节点

在这里插入图片描述

2. 注意这个配置之后该mapper下的所有的查询语句都会走缓存

如果我们想指定莫一条查询语句不走缓存,我们就可以再该sql下 配置 useCache=“false” ,
注意useCache 默认值为true,
例如:

<select id="getUsers" resultMap="userMap" useCache="false">
       select * from t_user t <include refid="queryByCondition"></include>
   </select>

那么该sql就不走缓存

3. 注意我们还有给我们该maper的实体类实现序列化,不然会报错

public class User implements Serializable{ 
好的,下面是一个简单的示例,演示如何在Spring Boot和MyBatis中启用二级缓存: 1. 首先,在MyBatis的配置文件中添加以下配置: ```xml <configuration> <settings> <setting name="cacheEnabled" value="true"/> </settings> <typeAliases> <!-- 定义MyBatis映射文件中的别名 --> </typeAliases> <mappers> <!-- 引入MyBatis映射文件 --> </mappers> <cache type="org.mybatis.caches.ehcache.EhcacheCache"/> </configuration> ``` 这里我们使用了Ehcache作为缓存的实现,需要在pom.xml中添加对Ehcache的依赖: ```xml <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.4</version> </dependency> ``` 2. 在Spring Boot的配置文件中添加以下配置: ```properties # 开启MyBatis二级缓存 mybatis.configuration.cache-enabled=true # 设置MyBatis缓存实现为Ehcache mybatis.cache.impl=org.mybatis.caches.ehcache.EhcacheCache ``` 3. 需要注意的是,为了使二级缓存生效,需要在Mapper接口中添加@CacheNamespace注解: ```java @Mapper @CacheNamespace(flushInterval = 60000) public interface UserMapper { ... } ``` 这里的flushInterval表示缓存刷新的时间间隔,单位是毫秒。 以上就是一个简单的示例,演示如何在Spring Boot和MyBatis中启用二级缓存。需要注意的是,二级缓存虽然可以提高系统性能,但是也可能会带来一些问题,比如数据一致性、缓存过期等,需要根据具体情况进行评估和调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值