Mybatis——缓存简介

简介

查询: 连接数据库,耗资源

一次查询的结果,给他暂存在一个可以直接取到的地方 --> 内存:缓存

我们再次查询相同数的时候,直接走缓存,就不用走数据库了

  1. 什么是缓存【Cache】?

· 存在内存中的临时数据

· 将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提升查询效率,解决了高并发系统的性能问题

  1. 为什么使用缓存?

· 减少和数据库的交互次数,减少系统开销,提高系统效率

  1. 什么样的数据能使用缓存?

· 经常使用并且不经常改变的数据

Mybatis缓存

· Mybatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存,缓存可以极大的提升查询效率

· Mybatis系统中默认定义了两级缓存:一级缓存二级缓存

------ 默认情况下,只有一级缓存开启(SqlSession级别的缓存,也称为本地缓存)

------ 二级缓存需要手动开启和配置,他是基于namespace级别的缓存

------ 为了提高拓展性,Mybatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级缓存

相关推荐
高翔·权衡之境7 小时前
主题4:差错控制——噪声中如何保真?
驱动开发·安全·缓存·系统安全·信息与通信
环流_12 小时前
Redis过期策略
数据库·redis·缓存
木子墨51613 小时前
工程算法实战 | 从LRU到手写本地缓存:LinkedHashMap → 双向链表+哈希表 → Caffeine 原理
java·数据结构·算法·链表·缓存
van久14 小时前
Day30:Redis 缓存策略 + 菜单实战缓存 + 三大缓存问题(穿透 / 击穿 / 雪崩)
数据库·redis·缓存
与数据交流的路上14 小时前
Redis-jedis连接池配置错误导致Redis CPU飙高
数据库·redis·缓存
YL2004042614 小时前
035LRU缓存
java·leetcode·缓存
2401_8920709814 小时前
C++ 缓存线程池(CachedThreadPool):原理、实现、对比
c++·缓存·缓存线程池
tellmewhoisi15 小时前
多版本共用redis导致数据没及时更新报错
数据库·redis·缓存
环流_16 小时前
Redis单线程但效率高且快
数据库·redis·缓存
tkevinjd16 小时前
MySQL1:分层架构
数据库·mysql·缓存