1.禁用
<!--useCache="false"-->
<select id="queryAllStudents" resultType="student" useCache="false">
select * from student
</select>
2.清理
(1)与清理一级缓存的方法相同
commit会清理一级和二级缓存,但是清理二级缓存时,不能是查询自身的commit()
一般执行增删改时会清理掉缓存,设计的原因是为了防止脏数据
但是在清理二级缓存中,commit()不能是查询自身的commit(session.commit())
这种方式就是通过硬编码的方式清理缓存
(2)select标签中设置
增加属性flushCache=“true”
<select id="queryAllStudents" resultType="student" flushCache="true">
select * from student
</select>
这种方式则是通过配置的方式去清理缓存,但是一般将清理缓存放在增删改的标签中,该处只是为了举例说明