特性:
默认就开启了,也可以关闭一级缓存 localCacheScope=STATEMENT
作用域:是基于sqlSession(默认),一次数据库操作会话。
缓存默认实现类PerpetualCache ,使用map进行存储的
查询完就会进行存储
先从二级缓存中获取,再从一级缓存中获取
key==> sqlid+sql
失效情况:
不同的sqlSession会使一级缓存失效
同一个SqlSession,但是查询语句不一样
特性:
默认开启了,没有实现
作用域:基于全局范围,应用级别。
缓存默认实现类PerpetualCache ,使用map进行存储的但是二级缓存根据不同的mapper命名空间多包了一层
map : org.apache.ibatis.session.Configuration#caches key:mapper命名空间 value:erpetualCache.map
key==> sqlid+sql
事务提交的时候(sqlSession关闭)
先从二级缓存中获取,再从一级缓存中获取
实现:
失效:
原文:https://www.cnblogs.com/jqccan/p/14616656.html