首页 > 其他 > 详细

mybatis的缓存机制

时间:2019-02-23 19:19:40      阅读:133      评论:0      收藏:0      [点我收藏+]

Mybatis提供了查询缓存来缓存数据,从而达到提高查询性能的要求

mybatis的查询缓存分为一级缓存和二级缓存。

1.一级缓存

一级缓存是SqlSession级别的缓存

二级缓存是mapper级别的。

Mybatis通过缓存机制减轻数据压力

在操作数据库时需要构建SqlSession对象,在对象中有一个HashMap用于存储缓存数据。

当在同一个SqlSession中执行两次相同的sql语句时,第一次执行完毕会将数据库中查询的数据写到缓存,第二次查询会从缓存中获取数据,不再去底层数据库查询,从而提高查询效率。

如果SqlSession执行了DML操作,并提交到数据库,Mybatis则会清空SqlSession中的一级缓存,不需要任何配置。

2.二级缓存二级缓存是mapper级别的缓存。在使用二级缓存时,多个SqlSession使用同一个Mapper的sql语句去操作数据库,得到的数据会存到二级缓存。相比一级缓存SqlSession,二级缓存的范围更大,多个SqlSessionk可以共用二级缓存,二级缓存是跨SqlSession

 

mybatis的缓存机制

原文:https://www.cnblogs.com/cainame/p/10423756.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!