在java项目中,如果需要大量的DB查询,导致缓存过多,项目运行缓慢,可以设置在select查询时,添加二级缓存的清空。
如果没有去配置flushCache、useCache,那么默认是启用缓存的。
1,flushCache默认为false,表示任何时候语句被调用,都不会去清空本地缓存和二级缓存。
2,useCache默认为true,表示会将本条语句的结果进行二级缓存。
在insert、update、delete语句时: flushCache默认为true,表示任何时候语句被调用,都会导致本地缓存和二级缓存被清空。 useCache属性在该情况下没有。update 的时候如果 flushCache=“false”,则当你更新后,查询的数据数据还是老的数据。
在Mapper的具体方法下设置对二级缓存的访问意愿:
<select id="save" parameterType="XX" flushCache="true" useCache="false"> </select>
同时设置 flushCache=“true” useCache=“false”
那么就是,第一次查询后,清空二级缓存,并且以后都不会在缓存中保存数据。
参考资料:
[mybatis]缓存_缓存有关的设置以及属性
MyBatis中开启查询缓存及flushCache与useCache的使用文章来源:https://www.toymoban.com/news/detail-807254.html
mybatis复习与总结(八)——缓存文章来源地址https://www.toymoban.com/news/detail-807254.html
到了这里,关于java项目性能优化(MyBatis中开启查询缓存及flushCache与useCache的使用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!