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

Ehcache使用实例

阅读更多

Cache 使用

 

l          得到一个 Cache 引用

 

获得一个 sampleCache1 的引用,从官方下载 ehcache.xml ,在 ehcache.xml 中已经有配置好的缓存,大家直接使用就可以,或是做测试,如果说真正使用的时候,最后自己手动配置一个比较好。

 

Cache cache = manager.getCache(“sampleCache1”);

 

l          使用 Cache

 

Put 一个 Element cache

 

Cache cache = manager.getCache(“sampleCache1”);

Element element = new Element(“key1”,”value1”);

cache.put(element);

 

update 一个 element 时,只要在构造 element 时将相同的 key 传入,在调用 cache.put(element) ,这是 Ehcache 会根据 key 到缓存中找到对应的 element 并做更新。

 

Cache cache = manager.getCache(“sampleCache1”)

Cache.put(new Element(“key1”, “value1”));

// 更新 element

Cache.put(new Element(“key1”, “value2”));

 

根据 key 取得对应 element 的序列化 value

 

Cache cache = manager.getCache(“sampleCache1”);

Element element = cache.get(“key1”);

Serializable value = element.getValue();

 

根据 key 取得对应 element 的非序列化 value

 

Cache cache = manager.getcache(“samplecache1”);

Element element = cache.get(“key1”);

Ojbect value = element.getObjectValue();

 

cache 中移除 key 对应的 element

 

Cache cache = manager.getCache(“sampleCache”);

Element element = new Element(“key1”, “value1”);

Cache.reomve(“key1”);

l          磁盘持久化

 

SampleCache1 的配置是支持磁盘持久化的。如果想要保证 element 即时的被输出到磁盘,可以调用 cache.flush();

 

Cache cache = manager.getcache(“samplecache1”);

Cache.flush();

 

l          Cache Sizes

 

获得当前 cache 中的 element 数量。

 

Cache cache = manager.getCache(“sampleCache1”);

Int elementsInMemory = cache.getSize();

 

获得当前 MemoryStore 中的 element 数量。

 

Cache cache = manager.getCache(“sampleCache1”);

long elementsInMemory = cache.getMemoryStoreSize();

 

获得当前 DiskStore element 数量。

 

Cache cache = manager.getCache(“sampleCache1”);

long elementsInMemory = cache.getDiskStoreSize();

 

l          Cache Hits and Misses

 

所谓的 hits 就是缓存访问次数,而 misses 就是缓存中每个 element 的丢失次数。这些参数对优化缓存配置有很大的帮助。

 

获得缓存中请求的 element 被找到的次数。

 

Cache cache = manager.getCache(“sampleCache1”);

Int hits = cache.getHitCount();

 

获得请求的 element MemoryStore 中被找到的次数。

 

Cache cache = manager.getCache(“sampleCache1”);

Int hits = cache.getMemoryStoreHitCount();

 

获得请求的 element DiskStore 中被找到的次数。

 

Cache cache = manager.getCache(“sampleCache1”);

Int hits = cache.getDiskStoreHitCount();

 

获得请求的 element MemoryStore 中没有被找到的次数。

 

Cache cache = manager.getCache(“sampleCache1”);

Int hits = cache.getMissCountNotFound();

 

获得请求的 element MemoryStore 中没有被找到的次数。

 

Cache cache = manager.getCache(“sampleCache1”);

Int hits = cache.getMissCountNotFound();

 

获得缓存中失效 element 没有被找到的次数。

 

Cache cache = manager.getcache(“samplecache1”);

Int hits = cache.getMissCountExpired();

 

创建一个默认配置 cache

 

manager.addCache(String cachename); 这个方法可以说是 Ehcache 很灵活的体现,通常我们想要添加一个新的 cache CacheManager 中时,应该调用 manager.addCache(Cache cache); 可以看到入参是一个 Cache 类型对象,而前面那段代码, Ehcache 会自动使用默认配置创建一个名字为输出参数的 cache 供使用,是不是很方面呢。

 

使用自定义参数创建一个 cache

 

Ehcache 允许通过编码的方式创建一个自定义 Cache ,也就是调用构造方法。

 

Public Cache(String name, int maxElementsInMemory, MemoryStoreEvictionPolicy memoryStoreEvictionPolicy, Boolean overflowToDisk, Boolean eternal, long timeToLiveSeconds, long timeToIdleSeconds, Boolean isdkPersistent, long diskExpiryThreadIntervalSeconds) {}

 

以上就是 Cache 的构造函数。

CacheManager manager = CacheManager.create();

Cache cache = new Cache(“test”, maxElements, MemoryStoreEvictionPolicy.LFU, true, false, 60, 30, false, 0);

Manager.addCache(testCache);

 

以上代码是创建一个缓存添加到 cachemanager 中,缓存名字为 test ,内存驱逐策略是 LFU ,允许输出到磁盘, element 不是永久有效的, element 最大存活时间是 60 秒, element 最大闲置时间 30 秒,不会持久化到磁盘,失效 element 清理线程运行时间间隔是 0 秒。

分享到:
评论

相关推荐

    ehCache 使用例子

    在ehCache的使用中,我们通常会遇到以下关键知识点: 1. **配置**:ehCache的配置文件通常是`ehcache.xml`,在这里可以定义缓存的策略,比如缓存的大小、存活时间、过期策略等。配置文件中的元素包括`<cache>`...

    spring3整合EhCache注解实例

    spring3整合EhCache注解实例

    ehcache例子

    在Maven项目中使用Ehcache,首先需要在`pom.xml`文件中添加Ehcache的依赖。通常,我们会引用最新稳定版本的Ehcache库,如下所示: ```xml <groupId>org.ehcache <artifactId>ehcache <version>3.x.y</version> ...

    ehcache使用详解

    在Java项目中,我们首先需要添加Ehcache的依赖。然后,可以通过以下代码创建和使用缓存: ```java // 引入Ehcache API import org.ehcache.Cache; import org.ehcache.CacheManager; import org.ehcache.config....

    spring+ehcache实例demo

    Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。 Ehcache...

    ehcache配置使用详解

    ### ehcache配置使用详解 #### 一、ehcache概述与特性 **背景介绍:** 缓存作为提升系统响应速度和降低数据库压力的...通过深入理解其配置和使用技巧,开发者能够充分发挥ehcache的优势,构建出高效稳定的应用系统。

    cache/ehcache缓存使用

    本文将详细讲解"cache/ehcache缓存使用"的相关知识点,包括缓存的基本概念、Ehcache的介绍、以及如何在Java应用中使用Ehcache进行缓存操作。 首先,我们要理解什么是缓存。缓存是一种存储技术,它临时存储常用或...

    spring整合EhCache 的简单例子

    - 首先,我们需要在Spring配置文件中声明EhCache的bean,包括`CacheManager`、`Cache`以及`EhCacheManagerFactoryBean`。 3. **配置EhCache** - 创建`ehcache.xml`配置文件,定义缓存的大小、过期策略等属性。...

    springmvc+ehcache简单例子

    在Spring MVC中使用Ehcache,我们通常会创建一个配置类,定义Ehcache的bean,并在需要缓存的方法上使用`@Cacheable`注解。 以下是一个简单的集成步骤: 1. **添加依赖**:在项目中添加Ehcache和Spring Cache的相关...

    ehcache使用,以及集群配置

    本文将详细介绍Ehcache的基本使用和集群配置。 ### Ehcache 基础使用 1. **安装与引入**: 首先,你需要将Ehcache的JAR包添加到你的项目类路径中。你可以通过Maven或Gradle等构建工具进行依赖管理,或者直接下载JAR...

    Ehcache 简单的监控

    通过这些示例,我们可以学习如何设置Ehcache的分布式特性,例如使用Terracotta服务器进行集群缓存,以及如何处理分布式环境下的缓存一致性问题。 总结来说,Ehcache的监控涉及了多个方面,包括但不限于使用JMX、Web...

    spring+ibatis+ehcache整合例子

    在IT行业中,Spring、iBatis和Ehcache是三个非常重要的开源框架,它们分别用于...通过实际运行和分析这个示例,你可以更好地掌握Spring的依赖注入、iBatis的SQL映射以及Ehcache的缓存机制,从而在实际项目中灵活运用。

    ehcache 测试 反射类 例子

    4. `src` 目录包含源代码,可能有使用Ehcache的缓存配置和使用反射进行测试的类。 5. `lib` 目录可能包含了Ehcache库和其他依赖库的JAR文件。 要深入了解这个例子,你需要查看`src`目录中的代码,特别是那些涉及...

    springmvc+ehcache 实例

    3. **创建缓存管理器**:在Spring配置中,声明一个EhcacheManagerFactoryBean,这会创建一个Ehcache的管理器实例。 4. **注解缓存**:在需要使用缓存的方法上使用`@Cacheable`注解,指定缓存的key和对应的缓存名称...

    EhCache实例工程及其所需jar包

    2. **EhCache的依赖jar包**:压缩包可能包含了EhCache的运行库,如`ehcache-core.jar`和其他相关的依赖库。确保这些jar包被正确地添加到你的类路径中。 3. **Java代码示例**:可能包括了创建和操作EhCache的代码,...

    ehcache3-samples, 关于使用 Ehcache 3,一些示例/教程.zip

    ehcache3-samples, 关于使用 Ehcache 3,一些示例/教程 Ehcache示例这里知识库包含有关 Ehcache 3用法的示例和教程。示例'basic'演示 Ehcache 3的基本配置和用法'集群'- 演示如何在Terracotta服务器上使用分布式缓存...

    Ehcache使用

    ### Ehcache 使用详解 #### 一、概述 Ehcache 是一款开源的、纯 Java 缓存框架,它能够提供高性能、低延迟的数据缓存功能。Ehcache 的设计目标是提高应用程序性能,通过减少对数据库或其他外部系统的依赖来达到这...

    Ehcache集群实例

    在本实例中,我们将探讨如何配置和使用Ehcache的集群功能,以及涉及的JGroups和RMI技术。 1. **Ehcache集群**:Ehcache集群使得多台服务器上的多个Ehcache实例能够共享数据。这通过分布式缓存实现,其中的缓存项...

    Spring与ehcache结合使用

    在这个例子中,`getAllStudents` 方法使用了`@Cacheable`注解,`updateAllStudents` 方法使用了`@CachePut`注解,`flush` 方法使用了`@CacheEvict`注解。 ##### 3.4 添加ehcache依赖 为了使上述配置生效,还需要在...

    spring3 hibernate4 ehcache实例

    总结,Spring3、Hibernate4和Ehcache的整合是Java企业级开发中常见的技术栈,通过合理的配置和使用,能有效提升系统的性能和响应速度。理解并熟练掌握这些技术的整合,对于开发者来说是提升技能的重要途径。通过阅读...

Global site tag (gtag.js) - Google Analytics