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">

  • 相关阅读:
    C++虚继承内存布局
    编译OpenJDK记录
    Node.js + Express 调研
    软件工程开发工具
    Servlets & JSP & JavaBean 参考资料
    Eclipse AST 相关资料
    Git & github 最常用操作笔记
    Java入门学习资料整理
    从变量的类型转换看C语言的思维模式
    数学地图(1)
  • 原文地址:https://www.cnblogs.com/breezeli/p/5000969.html
Copyright © 2011-2022 走看看