码迷,mamicode.com
首页 > 其他好文 > 详细

MyBatis之缓存

时间:2017-09-15 18:29:12      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:mybatis cache

MyBatis默认的缓存规则:

  • 映射语句文件中的所有 select 语句将会被缓存。

  • 映射语句文件中的所有 insert,update 和 delete 语句会刷新缓存。

  • 缓存会使用 Least Recently Used(LRU,最近最少使用的)算法来收回。

  • 根据时间表(比如 no Flush Interval,没有刷新间隔), 缓存不会以任何时间顺序 来刷新。

  • 缓存会存储列表集合或对象(无论查询方法返回什么)的 1024 个引用。

  • 缓存会被视为是 read/write(可读/可写)的缓存,意味着对象检索不是共享的,而 且可以安全地被调用者修改,而不干扰其他调用者或线程所做的潜在修改

    基本配置:

<cache
  eviction="FIFO"
  flushInterval="60000"
  size="512"
  readOnly="true"/>

可用的回收策略:

  • LRU – 最近最少使用的:移除最长时间不被使用的对象。

  • FIFO – 先进先出:按对象进入缓存的顺序来移除它们。

  • SOFT – 软引用:移除基于垃圾回收器状态和软引用规则的对象。

  • WEAK – 弱引用:更积极地移除基于垃圾收集器状态和弱引用规则的对象。

使用自定义缓存:

<cache type="com.domain.something.MyCustomCache"/>


本文出自 “数据挖掘工程师的成长历程” 博客,请务必保留此出处http://qianqiansun.blog.51cto.com/13271301/1965584

MyBatis之缓存

标签:mybatis cache

原文地址:http://qianqiansun.blog.51cto.com/13271301/1965584

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!