MyBatis的flushCache和useCache的使用

原创 2016年08月19日 11:17:07

(1)当为select语句时:

flushCache默认为false,表示任何时候语句被调用,都不会去清空本地缓存和二级缓存。

useCache默认为true,表示会将本条语句的结果进行二级缓存。

(2)当为insert、update、delete语句时:

flushCache默认为true,表示任何时候语句被调用,都会导致本地缓存和二级缓存被清空。

useCache属性在该情况下没有。

当为select语句的时候,如果没有去配置flushCache、useCache,那么默认是启用缓存的,所以,如果有必要,那么就需要人工修改配置,修改结果类似下面:

<select id="save" parameterType="XX" flushCache="true" useCache="false">
    ……
</select>
update 的时候如果 flushCache="false",则当你更新后,查询的数据数据还是老的数据。

A* 算法求解最短路径

   近来不少的朋友问我关于 A* 算法的问题, 目的是写一个搜索最短路径的程序. 这个在鼠标控制精灵运动的游戏中(不算智冠出的那些用鼠标充当键盘方向键的弱智 RPG) 大量使用,尤其是即时战略类的....
  • ghj1976
  • ghj1976
  • 2000-12-08 12:02:00
  • 6108

mybatis的userCache和flushCache

在MyBatis中有flushCache、useCache这两个配置属性,分为下面几种情况: (1)当为select语句时: flushCache默认为false,表示任何时候语句被调用,都不会去...
  • danran0223
  • danran0223
  • 2017-01-07 18:09:36
  • 909

MyBatis的flushCache和useCache的使用注意

之前在利用MyBatis做开发的时候,遇到了一个问题,使用select配置的时候发现前后两次的结果是一样的,并且使用statementType="CALLABLE"配置,然后在配置中写PL/SQL代码...
  • han_huayi
  • han_huayi
  • 2015-12-14 21:44:25
  • 6604

【mybatis】多次查询缓存的问题 flushCache为什么失效

转自:http://cheng-xinwei.iteye.com/blog/2021700?utm_source=tuicool&utm_medium=referral 注意 XML注解与普通注...
  • zhousenshan
  • zhousenshan
  • 2016-11-14 22:56:25
  • 1074

深入浅出Mybatis-改造Cache

在前面的文章里,我开发了两个插件:根据注解实现的sql自动生成插件和分页插件。这两个插件在没有开启cache的情况下可以很好的使用,但开启cache后却出现了一些问题,为了解决这些问题,我编写了拦截c...
  • hupanfeng
  • hupanfeng
  • 2013-11-25 20:14:35
  • 17415

深入了解MyBatis二级缓存

MyBatis深入了解二级缓存
  • isea533
  • isea533
  • 2015-03-30 08:57:42
  • 70006

ARM使用术语清除(flush)和清理(clean)表示对cache的两种基本操作

    清除cache的意思是清除cache中存储的全部数据。对处理器而言,清除操作只要清零相应cache行的有效位即可。当存储器配置上有变化时,整体或部分cache可能需要进行清除操作。有时也用术语...
  • arriod
  • arriod
  • 2008-08-25 13:37:00
  • 17381

Linux Kernel之flush_cache_all在ARM平台下是如何实现的

在驱动程序的设计中,我们可能会用到flush_cache_all将ARM cache的内容刷新到RAM,这是因为ARM Linux中cache一般会被设定为write back的。而通常象DMA是访问...
  • u011461299
  • u011461299
  • 2013-08-22 21:51:27
  • 4813

MyBatis_sqlsession.flushStatements(作用总结

MyBatis_sqlsession.flushStatements(作用总结; 当有处于事物中的时候 sqlSession.flushStatements();起到一种预插入的作用(执行了这行代...
  • y41992910
  • y41992910
  • 2016-12-14 16:53:49
  • 2581

MyBatis的缓存配置(Cache)

一、MyBatis的Cache配置 1、全局开关:默认是true,如果它配成false,其余各个Mapper XML文件配成支持cache也没用。 2、各个Mapper XML文件...
  • woshisap
  • woshisap
  • 2011-09-27 12:57:59
  • 24536
收藏助手
不良信息举报
您举报文章:MyBatis的flushCache和useCache的使用
举报原因:
原因补充:

(最多只允许输入30个字)