MyBatis二级缓存的配置

Mybatis的二级缓存配置非常简单,只需要在mapper.xml中添加一句

<cache />

如果需要跟详细的配置可以配置其属性

<mapper namespace="com.*****">

      <cache 
          eviction="LRU"
          flushInterval="60000"
          size="1024"
          readOnly="true"
      />    
  ...
 </mapper>
eviction是缓存的淘汰算法,可选值有"LRU"、"FIFO"、"SOFT"、"WEAK",缺省值是LRU

flashInterval指缓存过期时间,单位为毫秒,60000即为60秒,缺省值为空,即只要容量足够,永不过期

size指缓存多少个对象,默认值为1024

readOnly是否只读,如果为true,则所有相同的sql语句返回的是同一个对象(有助于提高性能,但并发操作
同一条数据时,可能不安全),如果设置为false,则相同的sql,后面访问的是cache的clone副本。

还有关于二级缓存的不足,下面是例子:

 


版权声明:本文为Leon_Jinhai_Sun原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。