mybatis Ehcache缓存(mybatis与Ehcache整合包下载)

 

Ehcache缓存
简介
Ehcache是一个用JAVA实现的,使用简单,高速,实现线程安全的缓存管理类库,Ehcache提供了用内存,磁盘文件存储,以及分布式存储方式等多种灵活的Cache管理方案。采用限制比较宽松的Apache License v2.0作为授权方式,被广泛地用于Hibernate,Spring,Cocoon等其他开源框架。
这里提供 mybatis与Ehcache整合包下载
https://github.com/mybatis/ehcache-cache/releases
还有ehcache下载地址
https://www.ehcache.org/downloads/

 

具体所要的包 我截图(自行下载)

mybatis Ehcache缓存(mybatis与Ehcache整合包下载)

 

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="cc.javar.dao.UserMapper">
  4.  <!-- ehcache开启-->
  5. <cache type="org.mybatis.caches.ehcache.EhcacheCache"></cache>
  6.     <select id="findUserByName" resultType="cc.javar.model.User">
  7.         select uId, userName , passWord from sysuser where userName = #{userName}
  8.     </select>
  9.     <insert id="addUser" parameterType="cc.javar.model.User" >
  10.     </insert>
  11. </mapper>

其他对象想开启缓存只要引用即可(仔细看明白)

<cache-red namespace=" cc.javar.dao.UserMapper">

 

和<cache></cache>放在那即可

 

然后再内路径下放ehcache.xml文件

  1. <ehcache xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../config/ehcache.xsd">
  2.      <!-- 磁盘保存路径 可以写d:\ehcache 等-->
  3.     <diskStore path="java.io.tmpdir"/>
  4.     <!--
  5.     Mandatory Default Cache configuration. These settings will be applied to caches
  6.     created programmtically using CacheManager.add(String cacheName)
  7.     -->
  8.     <!--
  9.        name:缓存名称。
  10.        maxElementsInMemory:缓存最大个数。
  11.        eternal:对象是否永久有效,一但设置了,timeout将不起作用。
  12.        timeToIdleSeconds:设置对象在失效前的允许闲置时间(单位:秒)。仅当eternal=false对象不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。
  13.        timeToLiveSeconds:设置对象在失效前允许存活时间(单位:秒)。最大时间介于创建时间和失效时间之间。仅当eternal=false对象不是永久有效时使用,默认是0.,也就是对象存活时间无穷大。
  14.        overflowToDisk:当内存中对象数量达到maxElementsInMemory时,Ehcache将会对象写到磁盘中。
  15.        diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。
  16.        maxElementsOnDisk:硬盘最大缓存个数。
  17.        diskPersistent:是否缓存虚拟机重启期数据 Whether the disk store persists between restarts of the Virtual Machine. The default value is false.
  18.        diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。
  19.        memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用)。
  20.        clearOnFlush:内存数量最大时是否清除。
  21.     -->
  22.     <defaultCache
  23.             maxElementsInMemory="10000"
  24.             eternal="false"
  25.             timeToIdleSeconds="120"
  26.             timeToLiveSeconds="120"
  27.             overflowToDisk="true"
  28.             maxElementsOnDisk="10000000"
  29.             diskPersistent="false"
  30.             diskExpiryThreadIntervalSeconds="120"
  31.             memoryStoreEvictionPolicy="LRU"
  32.             />
  33. </ehcache>
腾讯云服务器安全可靠高性能,多种配置供您选择
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: