集团站切换校区

验证码已发送,请查收短信

复制成功
微信号:togogoi
添加微信好友, 详细了解课程
已复制成功,如果自动跳转微信失败,请前往微信添加好友
打开微信
图标

业界新闻

当前位置:首页 > >业界新闻 > >

MyBatis缓存机制介绍

发布时间: 2023-03-31 16:24:58

什么是缓存​

在讲解MyBatis的缓存机制之前,我们先来了解什么是缓存。

缓存就是将我们经常查询的数据的结果保存到一个内存中(缓存就是内存中的一个对象),那么在下一次查询的时候就不用到数据库文件中查询,而是从内存中获取,从而减少与数据库的交付次数提高了响应速度。

假如有一条数据的查询量非常大,且内容基本不变,反复查询就会让数据库压力变大,这时我们就可以将数据存在内存缓存中,这样就大大提高的了查询效率,同时缓解了数据库压力。

MyBatis的缓存机制

MyBatis提供了一级缓存和二级缓存

 一级缓存:也称为本地缓存,用于保存用户在一次会话过程中查询的结果,用户一次会话中只能使用一个sqlSession,一级缓存是默认开启的。在同一个 sqlSession 中两次执行相同的 sql 语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取,从而提高查询效率。当一个 sqlSession 结束后该 sqlSession 中的 一级缓存也就不存在了。

 二级缓存:也称为全局缓存,是mapper级别的缓存,是针对一个表的查结果的存储,可以共享给所有针对这张表的查询的用户。二级缓存是多个 SqlSession 共享的,其作用域是 mapper 的同一个 namespace,不同的 sqlSession 两次执行相同 namespace 下的 sql 语句且向 sql 中传递参数也相同,即最终执行相同的 sql 语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据,而不再从数据库查询,从而提高查询效率。Mybatis默认没有开启二级缓存,需要手动配置。

MyBatis缓存机制介绍

上一篇: MyBatis的一级缓存什么意思

下一篇: Hadoop小文件处理方案

在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!