java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mybatis清除一级缓存方式

mybatis清除一级缓存的几种方式

作者:Smaksze

这篇文章主要介绍了mybatis清除一级缓存的几种方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

mybatis清除一级缓存方式

1、手动清空

sqlSession.clearCache()

2、Options注解

public interface UserMapper{
    @Options(flushCache= Options.FlushCachePolicy.TRUE)
    User selectById(@params("id")Integer id)
}

3、调用了修改的方法时,底层直接调用sqlSession.clearCache()一次性全部清空

4、在setting中关闭一级缓存

locaCacheScope = STATEMENT

5、手动提交/回滚

mybatis一级缓存何时失效

mybatis的一级缓存是 SqlSession 级别的缓存,它存在于 SqlSession 的生命周期内,当 SqlSession 关闭时,一级缓存也会随之失效。

具体来说,一级缓存可能失效的情况包括:

总之:

我们在使用 MyBatis 的时候,需要充分了解一级缓存的实现原理和失效情况,避免因为缓存问题导致程序运行出现错误。

如果遇到缓存失效的问题,可以通过修改配置文件或者手动清空缓存等措施来解决。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文