EhCache初体验
来源:互联网 发布:怎么上淘宝商学院 编辑:程序博客网 时间:2024/06/03 19:31
EhCaChe介绍
EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。
主要的特性有:
1. 快速
2. 简单
3. 多种缓存策略
4. 缓存数据有两级:内存和磁盘,因此无需担心容量问题
5. 缓存数据会在虚拟机重启的过程中写入磁盘
6. 可以通过RMI、可插入API等方式进行分布式缓存
7. 具有缓存和缓存管理器的侦听接口
8. 支持多缓存管理器实例,以及一个实例的多个缓存区域
9. 提供Hibernate的缓存实现
ehcache.xml
EhCaChe通过配置XML文件来管理配置缓存
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd" updateCheck="true" monitoring="autodetect" dynamicConfig="true"> <diskStore path="D:\cache"/> <!-- defaultCache:默认的缓存配置信息,如果不加特殊说明,则所有对象按照此配置项处理 maxElementsInMemory:设置了缓存的上限,最多存储多少个记录对象 eternal:代表对象是否永不过期 overflowToDisk:当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到 磁盘中 --> <defaultCache maxElementsInMemory="20" eternal="false" overflowToDisk="true" timeToIdleSeconds="1800" timeToLiveSeconds="1800"> </defaultCache> <!-- maxElementsInMemory 内存中 cache 中最多可以存放的元素的数量 overflowToDisk="true" 内存溢出缓存放在硬盘中 eternal="true" 永不过期 maxElementsOnDisk="0" 硬盘可放缓存数量 0表示无限2 diskPersistent="true" 是否缓存虚拟机重启期数据 --> <cache name="test" maxElementsInMemory="1" overflowToDisk="true" eternal="true" maxElementsOnDisk="0" diskPersistent="true" > </cache></ehcache>
保存缓存至本地
public class Test { public static void main(String[] args) { //获取项目根目录下的ehcache.xml文件 InputStream in = EhcacheTest.class.getClassLoader() .getResourceAsStream("ehcache.xml"); //获取缓存管理对象 CacheManager cm = CacheManager.create(in); //获取ehcache.xml中设置的缓存 Cache cache = cm.getCache("test"); //放进缓存数据 Element element = new Element("test", "EhCacheTest"); //放入缓存 cache.put(element); cache.flush(); //关闭缓存管理 cm.shutdown(); }}
运行上段程序,D:\ehcache 会保存缓存文件
获取保存本地的缓存
public class Test { public static void main(String[] args) { //获取项目根目录下的ehcache.xml文件 InputStream in = EhcacheTest.class.getClassLoader() .getResourceAsStream("ehcache.xml"); //获取缓存管理对象 CacheManager cm = CacheManager.create(in); //获取ehcache.xml中设置的缓存 Cache cache = cm.getCache("test"); Element el = cache.get("test"); System.out.println(el.getObjectValue()); cm.shutdown(); }}
上段代码可获取保存本地的缓存
阅读全文
0 0
- ehcache缓存初体验
- EhCache初体验
- 初识缓存以及ehcache初体验
- Spring 整合EhCache一 初体验
- EHCache 缓存初阶
- ehcache初使用
- Ehcache
- Ehcache
- ehcache
- ehcache
- EHCache
- ehCache
- ehcache
- ehcache
- ehcache
- ehcache
- ehcache
- ehcache
- OC语言学习08-属性约束
- ARM处理器工作模式
- JavaScript函数的副作用分析
- javaScript简介(第一章)
- CentOS6下安装ffmpeg
- EhCache初体验
- Scala——集合
- The requested URL /**** was not found on this server
- CASE WHEN的简单用法
- 在Anaconda中安装(非自带的)python包或者更新已有的python包,解决sklearn无法使用的问题
- NDK开发遇到的若干坑
- html
- Scala——异常
- JQuery教程详解一之语法与事件