zoukankan      html  css  js  c++  java
  • Mybatis 缓存策略

    听极客学院笔记

    使用mybatis的缓存需要以下三步

    一、在mybatis的config.xml中开启缓存

      <settings>
        <setting name="cacheEnabled" value="true" />
      </settings>

    二、在Mapper头中指定使用缓存

    <cache readOnly="false" size="500" flushInterval="120000" eviction="LRU"></cache>

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

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

    flushInterval缓存过期时间,单位是毫秒(1s=1000ms),默认为空,只要容量够则永不过期。

    eviction是缓存的淘汰算法,可选值有"LRU"、"FIFO"、"SOFT"、"WEAK",缺省值是LRU

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

      FIFO先进先出。

      SOFT软引用,基于垃圾回收器状态和软引用规则来移除对象。

      WEAK弱引用,基于垃圾回收器状态和弱引用规则

    三、在具体的SQL处指定使用缓存,默认开启

    <select id="getRowCount" resultType="int" useCache="true">

  • 相关阅读:
    [声明]博主退役了
    galgame(s?)
    atcoder grand contest 040 F Two Pieces
    AtCoder Grand Contest 040 E
    【AtCoder】CODE FESTIVAL 2016 qual C E-順列辞書 / Encyclopedia of Permutations
    GMOJ6282 向量
    [GMOJ6281] 串
    GMOJ 5909 跑商
    2019.10.28 GMOJ 6394 燃烧的火焰
    题解 CF1092B 【Teams Forming】
  • 原文地址:https://www.cnblogs.com/breezeli/p/5000969.html
Copyright © 2011-2022 走看看