参考:https://blog.csdn.net/qq_38905818/article/details/104806413
Mybatis的一级缓存和二级缓存(默认开启一级)
1.一级缓存:
一级缓存的作用域是 sqlSession,即sqlSession级别(默认开启)
在同一个SqlSession中,执行SQL查询时, 每次查询会先去缓存中取。如果取不到,再去数据库查询,并写在一级缓存中。 当执行SQL执行insert、update、delete等操作commit后,则SQLSession的一级缓存会被清空。
2.二级缓存:
二级缓存的作用域是mapper,即mapper级别(没有默认开启)
假如开启二级缓存。在同一个Mapper中,执行SQL查询时, 每次查询会先去缓存中取。如果取不到,再去数据库查询,并写在二级缓存中。 当执行SQL执行insert、update、delete等操作commit后,则Mapper的二级缓存会被清空。