热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Ehcache简介_动力节点Java学院整理

这篇文章主要介绍了Ehcache简介,使用Spring的AOP进行整合,可以灵活的对方法的返回结果对象进行缓存

使用Spring的AOP进行整合,可以灵活的对方法的返回结果对象进行缓存。

CachingFilter功能可以对HTTP响应的内容进行缓存。

1、主要特性

     1. 快速.
     2. 简单.
     3. 多种缓存策略
     4. 缓存数据有两级:内存和磁盘,因此无需担心容量问题
     5. 缓存数据会在虚拟机重启的过程中写入磁盘
     6. 可以通过RMI、可插入API等方式进行分布式缓存
     7. 具有缓存和缓存管理器的侦听接口
     8. 支持多缓存管理器实例,以及一个实例的多个缓存区域
     9. 提供Hibernate的缓存实现
     10. 等等

2、配置文件介绍(普通缓存) 

 
   
   
 
   
   
   
   
    
       
   
 

3、配置文件介绍(分布式缓存) 

 1)RMI集群模式

A、手工发现

需要指定节点发现模式peerDiscovery值为manual,rmiUrls设置为另一台服务器的IP、端口和缓存名等信息。

 

B、自动发现

需要指定节点发现模式peerDiscovery值为automatic自动,同时组播地址可以指定D类IP地址空间,范围从 224.0.1.0 到 238.255.255.255 中的任何一个地址。

 

需要在每个cache属性中加入


 
   
  

4、通过编程方式使用EhCache

//从classes目录查找ehcache.xml配置文件 
CacheManager cacheManager = CacheManager.getInstance(); 
 
//从classes目录查找指定名称的配置文件 
//CacheManager cacheManager = CacheManager.create(getClass().getResource("/ehcache.xml")); 
 
//根据配置文件获得Cache实例 
Cache cache = cacheManager.getCache("CACHE1"); 
 
//清空Cache中的所有元素 
cache.removeAll(); 
 
//往Cache中添加元素 
cache.put(new Element("s1", "11111")); 
cache.put(new Element("s2", "22222")); 
cache.put(new Element("s3", "33333")); 
 
//从Cache中取得元素 
Element e = cache.get("s3"); 
System.out.println(e.getValue()); 
 
//卸载缓存管理器 
cacheManager.shutdown(); 

5、页面缓存

在web.xml文件中配置过滤器。此处对test_tag.jsp页面进行缓存。

  
  testPageCachingFilter  
  net.sf.ehcache.constructs.web.filter.SimplePageCachingFilter  
 
  
  testPageCachingFilter  
  /test_tag.jsp 
 

在ehcache.xml文件中配置Cache节点。注意:cache的name属性必需为SimplePageCachingFilter。

 


推荐阅读
author-avatar
书友49916066
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有