Mybatis的缓存分为一级缓存和二级缓存,一级缓存默认开启,是sqlsession级别的,同一个sqlsession。二级缓存默认不开启,需要手动开启,是namespace级别的,作用于单表(xxxMapper.xml),无论是何等缓存,只要insert、update、delete就会删除缓存。
下图是一个简单的理解:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cMQzeuIu-1638351445377)(C:Users73439AppDataRoamingTyporatypora-user-imagesimage-20211124094710465.png)]
377)]
建议:不开启二级缓存,可能会造成数据不一致错误,使用可控的缓存,如果使用二级缓存,前提是select查询大于其它查询,且还是单表操作。



