`
JavaSam
  • 浏览: 934046 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

EhCache简单例子

    博客分类:
  • JAVA
 
阅读更多
import net.sf.ehcache.Cache;
import net.sf.ehcache.CacheException;
import net.sf.ehcache.CacheManager;
import net.sf.ehcache.Element;

public class EhCacheUtil {
	public static CacheManager cacheManager;
	private String cacheName;
	int maxElementsInMemory = 1000;
	static {
		if (cacheManager == null)
			try {
				cacheManager = CacheManager.create();
			} catch (CacheException ex) {
				ex.printStackTrace();
			}
	}

	/**
	 * 构造子
	 * @param cacheName
	 */
	public EhCacheUtil(String cacheName) {
		if (cacheName == null && "".equals(cacheName.trim()))
			throw new IllegalArgumentException("缓存名称不能为空!");
		this.cacheName = cacheName;
	}

	/**
	 * 获得缓存
	 * @param key
	 * @return
	 */
	public <T> T getCache(String key) {
		Cache cache = cacheManager.getCache(this.cacheName);
		if (cache != null) {
			Element element = cache.get(key);
			return (T) (element != null ? element.getValue() : null);
		}
		return null;
	}

	/**
	 * 添加缓存
	 * @param key
	 * @param value
	 */
	public void addCache(String key, Object value,int expires) {
		if (key != null && !"".equals(key)) {
			if(!cacheManager.cacheExists(this.cacheName))
				cacheManager.addCache(this.cacheName);
			Element element = new Element(key, value);
			element.setTimeToLive(expires);//设置失效时间(从创建到现在)
			cacheManager.getCache(this.cacheName).put(element);
		}
	}
	/**
	 * 更新缓存 TODO 待完善
	 * @param key
	 * @param newVal
	 */
	public void updateCache(){
		Cache cache = cacheManager.getCache(this.cacheName);
		if(cache!=null)
		  cache.flush();
	}
	/**
	 * 清空所有缓存
	 */
	public void clearAllCache(){
		cacheManager.clearAll();
	}
	/**
	 * 清空指定缓存
	 */
	public void clearCache(String key){
		addCache(key,null,1);
	}
}

 

 

0
0
分享到:
评论

相关推荐

    springmvc+ehcache简单例子

    springmvc+ehcache简单例子,一看就懂

    spring整合EhCache 简单例子

    spring整合EhCache 简单例子

    spring整合EhCache 的简单例子

    spring整合EhCache 的简单例子

    ehcache缓存demo

    简单的ehcache缓存demo实例,描述了 ehcache缓存的简单使用

    ehcache-java实例

    ehcache java中使用演示,详细,简单上手

    SpringAOP结合ehCache实现简单缓存实例

    NULL 博文链接:https://honda418.iteye.com/blog/354945

    EhCache缓存技术

    【EhCache】Java缓存框架使用EhCache结合Spring AOP EhCache是一个纯Java的进程内缓存框架,具有如下特点: 1. 快速简单,非常容易和应用集成。... 支持多缓存管理器实例,以及一个实例的多个缓存区域 等特点。

    Ehcache Java 缓存框架 v3.6.1

    EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。主要的特性有:1. 快速.2. 简单.3. 多种缓存策略4. 缓存数据有两级:内存和磁盘,因此无需担心容量问题5. 缓存...

    spring+shiro+ehcache例子

    项目简介:此项目只是简单的集成spring+springmvc+shiro+ehcahce 二: 步骤说明: 1:项目集成spring 在web.xml中配置spring容器的监听器。 2:项目集成springmvc 在web.xml中配置前端控制器 3:项目集成...

    Java缓存框架 Ehcache.zip

    EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider... 支持多缓存管理器实例,以及一个实例的多个缓存区域9. 提供Hibernate的缓存实现10. 等等 标签:缓存

    一个简单的searchable配置实例

    一个简单的searchable配置实例,通过它来了解searchable搜索框的配置

    Ehcache Java缓存框架 v3.8.1

    为您提供Ehcache Java缓存框架下载,EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。主要的特性有:1. 快速.2. 简单.3. 多种缓存策略4. 缓存数据有两级:内存和...

    EhcacheJava缓存框架 v3.9.0

    为您提供EhcacheJava缓存框架下载,EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。主要的特性有:1. 快速.2. 简单.3. 多种缓存策略4. 缓存数据有两级:内存和...

    Ehcache Java 缓存框架-其他

    &lt;p&gt;EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。&lt;/p&gt;&lt;p&gt;主要的特性有: 1. 快速. 2. 简单. 3. 多种缓存策略 4. 缓存数据有两级:内存和磁盘,因此无需担心容量...

    Spring整合Ecache

    本实例的环境 eclipse + maven + spring + ehcache + junit EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。Ehcache是一种广泛使用的开 源Java分布式缓存。主要...

    Java缓存框架Java缓存框架

    EhCache EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。 主要的特性有: 1. 快速. 2. 简单. 3. 多种缓存策略 4. 缓存数据有两级:内存和磁盘,因此无需担心容量...

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    缓存技术详解

    缓存ehcache开源框架,2. 简单. 3. 多种缓存策略 4. 缓存数据有两级:内存和磁盘,因此无需担心容量问题 5. 缓存数据会在虚拟机重启的过程中写入磁盘 6. 可以通过RMI、可插入API等方式进行分布式缓存 7. 具有缓存和...

Global site tag (gtag.js) - Google Analytics