目录
1、MyBatis缓存
1.1 一级缓存
MyBatis的一级缓存的作用域是session,当openSession()后,如果执行相同的SQL(相同语句和参数),MyBatis不再执行SQL,而是从缓存中命中返回。
原理:Mybatis执行查询时首先去缓存区命中,如果命中直接返回,没有命中则执行SQL,从数据库中查询。
- 使用session.clearCache()清空缓存,强制查询不缓存。
- 在执行insert、update、delete时会清空缓存。
测试正常的一级缓存:
调用clearCache()方法强制清空缓存: