mybatis缓存
1级缓存
1级缓存失效情况
1》2次SqlSession查询 ,因为1级缓存属于SqlSession级缓存,使用2次SqlSession调用触发2次查询sql会使1级缓存失效
2》同一个SqlSession使用不同的查询参数
3》两次查询中间做修改
4》手动调用SqlSession的clearCache方法。
一级缓存长这样, 是个map。
二、二级缓存
一级缓存会随着SqlSesion关闭而清除,并将结果放置到二级缓存中,二级缓存是SqlSessionFactory级别的缓存,同一个SqlSessionFactory产生的SqlSession都共享一个二级缓存。