一、方法
mybatis中的缓存主要有以下几种
1、mybatis cache
mybatis自带缓存,一般使用redis做缓存;
2、spring cache
spring的缓存框架,用于mybatis一般结合redis使用;
3、local cache
java内存缓存
二、区别
1、spring cache与mybatis cache
mybatis cache是整表操作,整个namespace共用一个key,不够灵活;
spring cache功能更加强大;mybatis cache渐渐被spring cache取代。
2、spring cache与local cache
(1)分布式支持
spring cache可以与分布式缓存解决方案(如 Redis)结合使用,适合需要跨多个实例共享缓存的应用;local cache 由于数据存储在本地 JVM 中,不支持跨 JVM 共享,适合单实例应用;
(2)性能方面
local cache内存中存储数据,访问速度非常快。
(3)适用场景
spring cache适合需要统一缓存管理、可扩展性和分布式支持的应用;
Local Cache 适合对性能要求极高且不需要分布式缓存的应用,通常用于临时数据存储。
下面几篇详细看下这几种缓存: