在 MyBatis 中,删除操作会导致缓存中的相应数据失效,但并不会立刻清除缓存中的数据。如果希望在执行删除操作后立即清除缓存,可以使用以下两种方法:
SqlSession
的 clearCache()
方法来手动清除缓存中的数据。例如:sqlSession.clearCache();
flushCache
选项为 true
:在执行删除操作时,可以在对应的 <delete>
标签中设置 flushCache
属性为 true
,这样就会在执行删除操作后立即清除缓存。例如:<delete id="deleteUser" parameterType="int" flushCache="true">
DELETE FROM users WHERE id = #{id}
</delete>
通过以上两种方法,可以在执行删除操作后立即清除缓存中的数据,确保缓存的数据与数据库中的数据保持一致。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:mybatis缓存问题有哪些及怎么解决