mybatis二级缓存

本文详细介绍了Mybatis的二级缓存,包括其定义、实现方式、开启关闭的配置方法,以及为何需要在提交后才能读取。二级缓存作为应用级缓存,具有更高的命中率,适用于缓存修改较少的数据。它在执行器层面实现,可以存储在本地内存、硬盘或第三方缓存系统。二级缓存的命中条件包括sql、参数、statementID和RowBounds的匹配,并且必须在事务提交后才能读取,以防止脏读问题。
摘要由CSDN通过智能技术生成

二级缓存定义

二级缓存定义:二级缓存也称作是应用级缓存,与一级缓存不同的是它的作用范围是整个应用,而且可以跨线程使用。所以二级缓存有更高的命中率,适合缓存一些修改较少的数据。

二级缓存实现

在这里插入图片描述
二级缓存的实现是通过CachingExecutor实现,可以通过本地内存存储,可以通过本地硬盘存储、甚至支持第三方缓存应用的存储(redis等)。
具体代码是啥?俺现在也不知道,知道了再来补充。
通过上述组成可以看出,二级缓存是优先于一级缓存的,因为执行器首先是一个CachingExecutor,然后在调用delegate(SimpleExecutor等执行器)操作一级缓存
在这里插入图片描述

二级缓存开启关闭

方法一:在mapper.xml当中配置
或者 XXX是命名空间名字

<mapper namespace="com.ll.dao.UserDao">
    <!--开启缓存 -->
    <cache></cache>
    <insert id="insert" parameterType="user">
     insert into user values(#{
   id},#{
   name},#{
   date})
    </insert>
    <!--查询-->
    <select  flushCache="true" id
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值