Ehcache 3.5入门

本文介绍如何使用Ehcache 3.x进行缓存管理配置,包括CacheManager和cache的配置方法。提供了可编程配置的示例代码,通过CacheManagerBuilder和CacheConfigurationBuilder等API实现。此外,还解释了初始化CacheManager的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:http://www.ehcache.org/documentation/3.5/getting-started.html

为了开始使用Ehcache,你需要配置一个CacheManager和cache,这可以通过可编程配置或xml配置两种方式来实现。

如果你在寻找使用JSR-107,aka javax.cache API,你应该从这遍文档入手:Ehcache 3.x JSR-107.请添加链接描述

可编程化配置

通过使用Ehcache里各种Builders提供的API,可以很流畅,容易地完成java可编程化配置。
和前一个版本的Ehcache一样,通过CacheManager这个对象来操作Cache是规范的方式。

1:CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder() 
2:  .withCache("preConfigured",CacheConfigurationBuilder.newCacheConfigurationBuilder(Long.class, String.class,ResourcePoolsBuilder.heap(10)))
3:.build();
4:cacheManager.init()

5:Cache<Long, String> preConfigured =    cacheManager.getCache("preConfigured", Long.class, String.class);

1:静态方方法:org.ehcache.config.builders.CacheManagerBuilder.newCacheManagerBuilder返回一个新的org.ehcache.config.builders.CacheManagerBuilder 实例。

2:这一行的配置说明:当CacheManager的实例方法:cacheManager.build()调用时,会创建一个cache,这一行就是指明使用builders来定义这个名为"preConfigured"的cache。参数"preConfigured"是这个cache的别名,用来从cacheManager中取回这个cache。第二个参数是使用Builder创建的org.ehcache.config.CacheConfiguration实例,用来配置cache,我们使用以下这个builder的静态方法来创建一个默认配置的cache:org.ehcache.config.builders.CacheConfigurationBuilder.newCacheConfigurationBuilder

3:最后,调用build()方法返回一个可用的CacheManager实例,但是并没有初始化。

4:在使用cacheManager之前,需要初始化这个实例,可以用两种实始化方法中的其中一种:调用cacheManager.init()方法;或者在第3步,调用CacheManagerBuilder.build(boolean)方法时,传入一个true的布尔值,

5:从cacheManager取回Cache的方法时,传入别名、key的类型、value的类型给cacheManager,在这个例子里,为了获得第2步声明的Cache,你需要准备三个参数:alias="preConfigured"、keyType=Long.class、valueType=String.class,为了类型安全,我们需要key和value的类型传入给cacheManager,如果发现跟CacheManager期望不一至,在整个应用的生命周期还没有结束时,CacheManager就会抛出一个ClassCastException 异常,这样就保存了这个cache不会被其他类型的数据污染了。

--------末完待继

转载于:https://blog.51cto.com/5914679/2097652

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值