前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mybatis 缓存问题

Mybatis 缓存问题

作者头像
收心
发布2022-01-19 14:00:36
3970
发布2022-01-19 14:00:36
举报
文章被收录于专栏:Java实战博客

Mybatis 调用过程解读

  • 每次与数据库的连接都会优先走缓存中查找
  • 先查询二级缓存,再去查询一级缓存,都没有命中才会去查询数据库
  • 二级缓存是以配置文件 <namespace>为单位的开启的,是在SqlSession 共享的,容易出现赃读、脏写,不建议使用!!!
  • 一级缓存是SqlSession独享的,默认开启,建议开启

什么是一级缓存?(默认开启)

当我们连续通过Mybatis 查询同一条Sql的时候两次,在短时间内,只会在第一次查询时会走SQL,第二次查询,就不会出现连接数据库(Opening JDBC Connection)查询的问题了!第二次使用的是 一级缓存!

什么是二级缓存?(默认不开启)

如何开启呢?在mapper.xml 添加<catch> </catch>

缓存陷井?

特殊说明: 解决问题的光鲜,藏着磕Bug的痛苦。 万物皆入轮回,谁也躲不掉! 以上文章,均是我实际操作,写出来的笔记资料,不会出现全文盗用别人文章!烦请各位,请勿直接盗用!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Mybatis 调用过程解读
  • 什么是一级缓存?(默认开启)
  • 什么是二级缓存?(默认不开启)
  • 缓存陷井?
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档