MyBatis学习笔记——14MyBatis查询缓存(一级缓存,二级缓存)
完整学习路线:https://blog.youkuaiyun.com/qq_40163148/article/details/89668242
为什么需要缓存?
为了减轻数据库压力,提高数据库性能
一级缓存和二级缓存的作用范围
1.一级缓存(默认开启)
在操作数据库时需要构建sqlSession对象,在对象中有一个数据结构(hashMap)用于存储缓存数据,不同的SqlSession之间的缓存数据区域(HashMap)互不影响
一级缓存的作用范围:sqlSession范围
第一次查询id为1的用户写入sqlsession发送sql语句
第二次查询id为1的用户读取sqlsesssion不发送sql语句
当对数据库进行更改时清除缓存即commit,这样做的目的是为了避免读脏数据