mybatis中的缓存机制

1.什么是缓存?

        一般缓存时将服务器保存到本地,当使用到不需要再向数据服务器请求,直接使用。

2.什么是mybatis缓存?

        是将数据库与一次会话请求的放在本地缓存中,需要使用到相同的数据,直接从缓存中拿出使用,不需要去查询数据库。

   3.mybatis缓存分类

        一级缓存:也可以称为本地缓存,SqlSession级别的缓存;是有个map,一级缓存是一直开启的,不需要关闭。

        一级缓存失效的情况(如下):

                ①查询时使用的SqlSession不同

                ②SqlSession相同,查询的条件不同

                ③SqlSession相同,两次查询执行了增删改查操作

                ④手动清除一个一级缓存(缓存清空)

二级缓存:又称为全局缓存,namespace级别的缓存,一个namespace对应一个二级缓存。

        工作机制:

                ①一个会话与数据库的会话,查询了一个数据,这个数据数据就会被放在当前的一级缓存中。

                ②如果会话关闭,一级缓存中的数据就会保持在二级缓存中,当进行新的查询时,参照的数据就是二级缓存中的内容。

                ③查询出来的数据会先默认放在一级缓存中

                ④只有当会话提交或者关闭的情况,一级缓存中的数据会转移到二级缓存中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值