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); } }
相关推荐
在这个“springmvc+ehcache简单例子”中,我们将探讨如何将两者结合使用,以实现高效的数据缓存。 首先,让我们了解一下Spring MVC。Spring MVC提供了一个分层架构,允许开发者将业务逻辑、数据访问和用户界面分离...
Spring整合EhCache是一个常见的缓存管理方案,尤其在企业...这个简单的例子只是基础,实际应用中可能需要根据业务需求进行更复杂的配置和优化。确保理解这些核心概念,有助于在实际开发中更好地利用缓存提高系统性能。
本文将深入探讨Ehcache的简单监控,帮助开发者更好地理解其工作原理和性能状态。 首先,了解Ehcache的核心概念是至关重要的。Ehcache分为三个主要部分:内存缓存、磁盘存储和缓存复制。内存缓存用于存储最近使用的...
Spring 整合 EhCache 是一个常见的缓存...通过以上步骤,你可以在Spring应用中实现EhCache的简单整合,提高应用程序的性能和响应速度。在实际项目中,根据业务场景灵活运用和优化缓存策略,可以进一步提升系统效率。
下面是一个简单的Ehcache配置示例: ```java CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder() .withCache("myCache", CacheConfigurationBuilder.newCacheConfigurationBuilder( ...
在本篇【Spring AOP+ehCache简单缓存系统解决方案】中,我们将探讨如何利用Spring AOP(面向切面编程)和ehCache框架来构建一个高效、简单的缓存系统,以提升应用程序的性能。ehCache是一款流行的开源Java缓存库,它...
在"项目下载下来 直接运行"的描述中,我们可以推断出这个实例是一个可以直接运行的项目,具有一个简单的界面,包含"存储数据"和"获取数据"两个按钮。通过点击这些按钮,用户可以直观地看到Ehcache缓存的效果。这表明...
在提供的"TestEhcache"压缩包中,很可能包含了一个简单的EhCache使用示例,可能包括以下部分: 1. **配置文件**:通常为`ehcache.xml`,用于定义Cache Manager和Cache的配置,包括缓存大小、过期时间、持久化策略等...
**Spring+EhCache缓存实例详解** 在现代的Java企业级应用中,缓存技术扮演着至关重要的角色,它能够显著提升系统性能,减少数据库负载。Spring框架与EhCache的结合,为开发者提供了一种高效、易用的缓存解决方案。...
在Java领域,缓存是优化系统性能的重要手段之一,而ehCache因其简单易用和强大的功能,成为了许多开发者的首选。 在ehCache的使用中,我们通常会遇到以下关键知识点: 1. **配置**:ehCache的配置文件通常是`...
本文将深入探讨如何结合Spring AOP与EhCache实现一个简单的缓存实例,以便优化Java应用的运行效率。 首先,让我们了解Spring AOP。Spring AOP是Spring框架的一部分,它允许我们在不修改业务代码的情况下,通过定义...
一个简单的配置示例如下: ```xml <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"> eternal="false" ...
在“ehcache学习的例子”中,初学者可以通过实际操作理解Ehcache的基本用法。首先,我们需要理解Ehcache的核心概念:缓存、缓存管理器、缓存区域和缓存元素。 1. 缓存:缓存是Ehcache的基本单元,存储键值对数据。...
实例环境中,你可以创建一个简单的Java测试类,模拟缓存的添加、获取和清除操作。 4. **常见问题**:在实际使用中,可能会遇到缓存一致性、网络延迟、节点故障等问题。解决这些问题通常需要合理配置Ehcache的缓存...
3. **初始化Ehcache**:在应用程序启动时加载配置并初始化Ehcache实例。 4. **使用缓存**:通过Ehcache API进行缓存的增删查改操作,例如`CacheManager.getInstance().getCache("myCache").put(key, value)`。 5. ...
2. **简单**:其简洁的API和丰富的文档使ehcache易于集成和使用,即使是对缓存技术不熟悉的开发者也能快速上手。 3. **多种缓存策略**:ehcache支持LRU(Least Recently Used)、LFU(Least Frequently Used)和FIFO...
在上述例子中,`getUserById`方法的返回结果会被缓存到名为"users"的区域中,key由方法参数id生成。当`deleteUserById`方法被调用时,对应id的用户缓存会被清除。 Ehcache还提供了丰富的特性,比如二级缓存、缓存...
本文将深入探讨如何在Java项目中集成并使用EhCache,通过具体的实例来展示其基本操作和核心功能。 首先,我们需要在项目中引入EhCache的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml ...
在`Ehcache_Hello`这个案例中,开发者可能会创建一个简单的缓存区,并通过API添加、获取和移除缓存项。以下是一个基础的示例代码: ```java CacheManager cacheManager = CacheManager.create(); Cache cache = ...