栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot + Mybatis-Plus开启二级缓存

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot + Mybatis-Plus开启二级缓存

目录

一级缓存和二级缓存的区别

一级缓存

二级缓存

开启 Mybatis-Plus 二级缓存(可配置)

Mapper.java 配置

Mapper.xml 配置

实体类配置


一级缓存和二级缓存的区别

一级缓存

一级缓存 Mybatis 的一级缓存是指 SQLSession,一级缓存的作用域是 SQlSession , Mabits 默认开启一级缓存。 在同一个SqlSession中,执行相同的SQL查询时;第一次会去查询数据库,并写在缓存中,第二次会直接从缓存中取。 当执行SQL时候两次查询中间发生了增删改的操作,则SQLSession的缓存会被清空。

每次查询会先去缓存中找,如果找不到,再去数据库查询,然后把结果写到缓存中。 Mybatis的内部缓存使用一个HashMap,key为hashcode+statementId+sql语句。Value为查询出来的结果集映射成的java对象。 SqlSession执行insert、update、delete等操作commit后会清空该SQLSession缓存。

二级缓存

二级缓存 二级缓存是 mapper 级别的,Mybatis默认是没有开启二级缓存的。 第一次调用mapper下的SQL去查询用户的信息,查询到的信息会存放到该 mapper 对应的二级缓存区域。 第二次调用 namespace 下的 mapper 映射文件中,相同的sql去查询用户信息,会去对应的二级缓存内取结果。

开启 Mybatis-Plus 二级缓存(可配置)
mybatis-plus:
  type-aliases-package: com.xxx.*.model.entity
  mapper-locations: classpath*:mapper
@CacheNamespace
public interface UserMapper extends BaseMapper {
    
    
}

Mapper.xml 配置



    
    

实体类配置
@Data
public class User implements Serializable {

    private static final long serialVersionUID = 20220714091937L;

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1028157.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号