MyBatis一级缓存
MyBatis一级缓存默认开启,一级缓存为Session级别的缓存,在执行以下操作时一级缓存会清空
1.执行session.clearCache();
2.执行CUD操作
3.session.close(); //不是同一个Session对象了
MyBatis二级缓存
需要配置<cache></cache>
是一个映射文件级的缓存
使用Mybatis二级缓存时查询的对象实体类必须序列化实现(实现Serializable接口)
二级缓存使用时 必须使用session.commit(),即提交事务后,才会触发二级缓存
使用二级缓存使用两个Session查询,查询时会只发一次SQL