`
cyz001
  • 浏览: 43911 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ehcache的简单应用

阅读更多

概述
Ehcache的类层次模型主要为三层,最上层的是CacheManager,他是操作Ehcache的入口。我们可以通过CacheManager.getInstance()获得一个单子的CacheManger,或者通过CacheManger的构造函数创建一个新的CacheManger。每个CacheManager都管理着多个Cache。而每个Cache都以一种类Hash的方式,关联着多个Element。而Element则是我们用于存放要缓存内容的地方。


配置文件

a)        参考:http://ehcache.sourceforge.net/documentation/configuration.html

b)        例子:

<ehcache>
	<defaultCache maxElementsInMemory="2" eternal="false"
		timeToIdleSeconds="1" timeToLiveSeconds="1" overflowToDisk="false"
		memoryStoreEvictionPolicy="LRU" />

	<cache name="sampleCache1" maxElementsInMemory="2" eternal="false"
		overflowToDisk="false" timeToIdleSeconds="1" timeToLiveSeconds="1"
		memoryStoreEvictionPolicy="LRU" />

</ehcache>



注:在ehcache的配置文件里面必须配置defaultCache。每个<cache>标签定义一个新的cache,属性的含义基本上可以从名字上得到,详细的说明可以参考上面的链接。


事例程序:

a)        例子:

public class Test {

     public static void main(String[] args) throws Exception {
         CacheManager manager = new CacheManager("ehcache.xml");
         Cache cache = manager.getCache("sampleCache1");

         for (int i = 0; i < 5; i++) {
              Element e = new Element("key" + i, "value" + i);
              cache.put(e);
         }

         List<String> keys = cache.getKeys();
         for (String key : keys) {
              System.out.println(key + "," + cache.get(key));
         }
     }
}





注:程序的流程也是比较明晰的,首先是获取一个CacheManager,这是使用Ehcache的入口,然后通过名字获取某个Cache,然后就可以对Cache存取Element。Cache使用类Hash的方式来管理Element。


事件处理

a)        说明:可以为CacheManager添加事件监听,当对CacheManager增删Cache时,事件处理器将会得到通知。要配置事件处理,需要通过ehcache的配置文件来完成。

b)        配置文件:

<ehcache>
<cacheManagerEventListenerFactory class="ehcache.CMELF"/>
</ehcache>



注:通过<cacheManagerEventListenerFactory>来注册事件处理器的工厂类。

c)        代码:

public class CMELF extends CacheManagerEventListenerFactory {

     @Override
     public CacheManagerEventListener createCacheManagerEventListener(
              Properties properties) {
         return new CMEL();
     }
}


class CMEL implements CacheManagerEventListener {
     public void dispose() throws CacheException {}
     public Status getStatus() {return null;}
     public void init() throws CacheException {}
     public void notifyCacheAdded(String cacheName) {
         System.out.println("Cache [" + cacheName + "] Added");
     }

     public void notifyCacheRemoved(String cacheName) {
         System.out.println("Cache [" + cacheName + "] Deleted");
     }

}

注:这个代码分为两部分,首先是一个工厂类,用于创建事件处理器事例,工厂类负责还需要管理并发之类的问题。


 

分享到:
评论

相关推荐

    Ehcache简单应用——RSSReaderTag

    NULL 博文链接:https://snowolf.iteye.com/blog/728877

    Ehcache 简单的监控

    本文将深入探讨Ehcache的简单监控,帮助开发者更好地理解其工作原理和性能状态。 首先,了解Ehcache的核心概念是至关重要的。Ehcache分为三个主要部分:内存缓存、磁盘存储和缓存复制。内存缓存用于存储最近使用的...

    springmvc+ehcache简单例子

    在这个“springmvc+ehcache简单例子”中,我们将探讨如何将两者结合使用,以实现高效的数据缓存。 首先,让我们了解一下Spring MVC。Spring MVC提供了一个分层架构,允许开发者将业务逻辑、数据访问和用户界面分离...

    Ehcache分布式缓存与其在SpringBoot应用

    Ehcache是一个高性能的、基于Java的进程内缓存解决方案,它被广泛应用于各种Java应用程序,包括Java EE和轻量级容器。Ehcache的主要优势在于它的快速响应、易用性和丰富的缓存策略。它提供了两种级别的缓存存储:...

    Spring AOP+ehCache简单缓存系统解决方案

    在IT行业中,Spring AOP(面向切面编程)和ehCache是两个重要的工具,它们在构建高效、可扩展的应用程序时发挥着关键作用。本文将深入探讨如何利用这两个技术实现一个简单的缓存系统解决方案。 首先,Spring AOP是...

    Ehcache缓存框架的简单应用

    Ehcache是一个开源的、高性能的Java缓存框架,它被广泛用于提高应用程序的性能,减少数据库的负载,以及优化数据访问。在本文中,我们将深入探讨Ehcache的基本概念、配置、使用方法以及其在实际应用中的优势。 **...

    spring整合EhCache 简单例子

    Spring整合EhCache是一个常见的缓存管理方案,尤其在企业...这个简单的例子只是基础,实际应用中可能需要根据业务需求进行更复杂的配置和优化。确保理解这些核心概念,有助于在实际开发中更好地利用缓存提高系统性能。

    简单介绍Ehcache的优缺点

    Ehcache的设计理念是“快速而简单”,它提供了多种缓存策略和持久化选项,使得开发者能够在不同的应用场景下灵活选择最合适的缓存机制。 #### Ehcache的优点: 1. **高性能与低延迟**:Ehcache采用高效的内存管理...

    spring整合EhCache 的简单例子

    Spring 整合 EhCache 是一个常见的缓存...通过以上步骤,你可以在Spring应用中实现EhCache的简单整合,提高应用程序的性能和响应速度。在实际项目中,根据业务场景灵活运用和优化缓存策略,可以进一步提升系统效率。

    Spring AOP+ehCache简单缓存系统解决方案.doc

    Spring AOP 和 EhCache 结合使用提供了一个简单而有效的缓存解决方案,主要目的是优化系统性能,减少对数据库的频繁访问。下面将详细解释这个解决方案的关键组成部分。 首先,EhCache 是一个广泛使用的开源 Java ...

    ehcache资料(包含ehcache jar包)

    9. **API友好**:Ehcache提供了简单易用的API,使得开发者能够轻松地进行缓存操作。 **Ehcache的使用步骤:** 1. **添加依赖**:将提供的Ehcache jar包引入到项目类路径中,如果是Maven或Gradle项目,需要在配置...

    Java缓存框架 EhCache

    6. **API与集成**:EhCache提供了简单易用的API,开发者可以通过Java API进行缓存操作。同时,EhCache与许多流行框架如Spring、Hibernate等有很好的集成,使得在这些框架中使用EhCache变得十分方便。在Hibernate中,...

    Ehcache经典教程实例应用-原创

    - **简单**:其API简洁明了,易于集成到Java应用程序中。 - **多种缓存策略**:支持LRU(最近最少使用)、LFU(最不经常使用)等缓存替换策略。 - **两级缓存**:内存和磁盘,当内存满时,数据会被自动移至磁盘,...

    Ehcache(一): Spring + Ehcache开场白

    Ehcache是一款高性能、易用且广泛应用于Java环境中的分布式缓存系统,它极大地提高了应用程序的性能和响应速度。在Spring框架中集成Ehcache,能够实现数据的快速访问,减轻数据库的压力,优化整体系统架构。本文将...

    Ehcache_Hello

    在`Ehcache_Hello`这个案例中,开发者可能会创建一个简单的缓存区,并通过API添加、获取和移除缓存项。以下是一个基础的示例代码: ```java CacheManager cacheManager = CacheManager.create(); Cache cache = ...

    ehcache项目缓存技术

    Ehcache提供了一个简单易用的API,允许开发者轻松地在应用中集成缓存功能,从而减少对数据库的依赖,提高系统性能。 二、缓存原理与优势 缓存的基本原理是将常用但计算或获取成本较高的数据存储在内存中,以便快速...

    ehcache的jar包

    Ehcache不仅可以作为简单的内存缓存,还可以与其他持久化存储层(如数据库或分布式缓存)配合使用,实现更复杂的缓存策略。 Ehcache的核心概念主要包括以下几个部分: 1. **Cache**:缓存是Ehcache的基本单位,它...

    ehcache开发工具包

    EhCache是一款高效、易用且功能强大的Java缓存库,它被广泛应用于各种Java应用程序中,以提高数据访问速度并降低数据库负载...无论是简单的小型项目还是复杂的大型系统,EhCache都能提供有效的缓存支持,提升整体性能。

    ehcache配置使用详解

    2. **简单**:其简洁的API和丰富的文档使ehcache易于集成和使用,即使是对缓存技术不熟悉的开发者也能快速上手。 3. **多种缓存策略**:ehcache支持LRU(Least Recently Used)、LFU(Least Frequently Used)和FIFO...

Global site tag (gtag.js) - Google Analytics