1.配置样例

<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
<diskStore path="d:/ehcache/"></diskStore> <!-- 默认缓存配置 -->
<defaultCache
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="120"
timeToLiveSeconds="120"
overflowToDisk="true"
/> <!-- User缓存配置 -->
<cache
name="User"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
overflowToDisk="true"
/> </ehcache>

2.属性说明

2.1.diskStore

  指定数据存储位置,可指定磁盘中的文件夹位置。样例中配置位置为“d:/ehcache/”

2.2.defaultCache

  默认缓存配置

2.3.cache

  指定对象的缓存配置,其中 name 属性为指定缓存的名称(必须唯一)

2.4.配置属性中的元素说明

   1)maxElementsInMemory(正整数):

    在内存中缓存的最大对象数量

   2)maxElementsOnDisk(正整数):

    在磁盘上缓存的最大对象数量,默认值为0,表示不限制。

   3)eternal

    设定缓存对象保存的永久属性,默认为 false 。当为 true 时 timeToIdleSeconds、timeToLiveSeconds 失效。

   4)timeToIdleSeconds(单位:秒):

    对象空闲时间,指对象在多长时间没有被访问就会失效。只对eternal为false的有效。默认值0,表示一直可以访问。

   5)timeToLiveSeconds(单位:秒):

    对象存活时间,指对象从创建到失效所需要的时间。只对eternal为false的有效。默认值0,表示一直可以访问。

   6)overflowToDisk

    如果内存中数据超过内存限制,是否要缓存到磁盘上。

    7)diskPersistent

    是否在磁盘上持久化。指重启jvm后,数据是否有效。默认为false。

    8)diskSpoolBufferSizeMB(单位:MB):

    DiskStore使用的磁盘大小,默认值30MB。每个cache使用各自的DiskStore。

    9)memoryStoreEvictionPolicy

    如果内存中数据超过内存限制,向磁盘缓存时的策略。默认值LRU,可选FIFO、LFU。

3.清空策略

3.1.FIFO(first in first out):

  先进先出

3.2.LFU(Less Frequently Used):

  最少被使用,缓存的元素有一个hit属性,hit值最小的将会被清除缓存。

3.3.LRU(Least Recently Used)默认策略:

  最近最少使用,缓存的元素有一个时间戳,当缓存容量满了,而又需要腾出地方来缓存新的元素的时候,那么现有缓存元素中时间戳离当前时间最远的元素将被清除缓存。

Ehcache.xml 配置及属性说明的更多相关文章

  1. 02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置

     项目结构(所需jar包,配置文件) sqlMapConfig.xml的配置内容如下: <?xmlversion="1.0"encoding="UTF-8&qu ...

  2. ehcache.xml配置参数

    <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLoc ...

  3. ehcache.xml配置

    <?xml version="1.0" encoding="UTF-8"?>   <ehcache xmlns:xsi="http: ...

  4. ehcache.xml配置详解

    一:配置文件案例 <ehcache> <!-- 磁盘存储:将缓存中暂时不使用的对象,转移到硬盘,类似于Windows系统的虚拟内存 path:指定在硬盘上存储对象的路径 --> ...

  5. Spring框架xml配置中属性ref与value的区别

    1.spring批量扫描mybatis的mapper,使用value 2.spring管理mybatis的单个mapper,用的是ref 虽然引用的是同一个bean,但两个对象的属相类型明显不一样,一 ...

  6. log4j.xml 配置参数属性level使用心得

    jdbc.sqlonly        只显示执行的sql语句.info级才可以显示,debug增加显示java源代码位置. jdbc.sqltiming    显示执行的sql语句以及语句执行时间, ...

  7. hibernate二级缓存ehcache hibernate配置详解

    <!-----------------hibernate二级缓存ehcache------------------------->hibernate配置 <prop key=&quo ...

  8. Spring声明式事务(xml配置事务方式)

    Spring声明式事务(xml配置事务方式) >>>>>>>>>>>>>>>>>>>& ...

  9. ehcache.xml 属性大全

    属性大全 name:缓存名称. maxElementsInMemory:缓存最大个数. eternal:对象是否永久有效,一但设置了,timeout将不起作用. timeToIdleSeconds:设 ...

随机推荐

  1. Spring Boot + Spring Cloud 实现权限管理系统 后端篇(一):Kitty 系统介绍

    在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 温馨提示: 有在演示环境删除数据的童鞋们,如果可以的话,麻烦动动小指,右键头像 ...

  2. springboot-25-springboot 集成 ActiveMq

    消息的发布有2种形式, 队列式(点对点) 和主题式(pub/sub) 模式, 队列式发布后, 接收者从队列中获取消息后, 消息就会消失, 但任意消费者都可以从队列中接受消息, 消息只能被接受一次 主题 ...

  3. mongodb-分组分页

    1, 添加测试数据 @Test public void save() { News n = null; ; i < ; i++) { n = new News(); n.setTitle(&qu ...

  4. 在word中优雅地插入代码

    PlanetB:带行号 http://www.planetb.ca/syntax-highlight-word   Pygments(推荐):不带行号,多种样式可选 http://pygments.o ...

  5. bzoj 4912: [Sdoi2017]天才黑客

    Description Solution 这个题和点没什么关系 , 之和边与边之间关系有关 , 我们就把边看作点 , 边权就是 \(lcp\) , 点权看作这条边本来的权值. 现在考虑两两连边 , \ ...

  6. MYSQL安装时解决要输入current root password的解决方法

    在装MYSQL的时候发现要输入current root password不记得以前在电脑里装过(你的系统曾经装过MYSQL在重装就会要求输入原来设定的密码,如果是第一次安装就不会出现),在网上苦苦搜寻 ...

  7. sql中的分页实现

    1.两种方式 1.1:row_number() over()函数 1.2:OFFSET ....FETCH OFFSET { integer_constant | offset_row_count_e ...

  8. C学习笔记(1)-结构体、预处理与多文件结构程序设计

    一.结构体的定义与使用 #include <stdio.h> //定义结构体(类似模板) typedef struct { char name[50]; int age; char add ...

  9. iOS字体打印

    //打印所以字体    NSArray *familyNames = [UIFont familyNames];    for(NSString *familyName in familyNames) ...

  10. [IDE]快捷键整理

      VS Resharper eclipse 备注 运行 Ctrl+F5 - Ctrl+F11   调试 F5 - F11   逐语句执行 F11 - F5 IE.FF: F11 逐过程执行 F10 ...