CacheManager的用法

本文介绍了EHCache中CacheManager的创建及配置方法,包括不同方式创建CacheManager实例、加载配置文件的方法、如何增删Cache以及关闭CacheManager。适用于需要了解缓存管理细节的开发者。

<!-- [if !mso]> <style> v/:* {behavior:url(#default#VML);} o/:* {behavior:url(#default#VML);} w/:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--><!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]--><!-- [if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026"/> </xml><![endif]--><!-- [if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1"/> </o:shapelayout></xml><![endif]-->

1 CacheManager 对象的创建方式

(1)Create a singleton CacheManager using defaults, then list caches.

CacheManager.create();

String[] cacheNames = CacheManager.getInstance().getCacheNames();

(2)Create a CacheManager instance using defaults, then list caches.

CacheManager manager = new CacheManager();

String[] cacheNames = manager.getCacheNames();

(3)Create two CacheManagers, each with a different configuration, and list the caches in each.

CacheManager manager1 = new CacheManager("src/config/ehcache1.xml");

CacheManager manager2 = new CacheManager("src/config/ehcache2.xml");

String[] cacheNamesForManager1 = manager1.getCacheNames();

String[] cacheNamesForManager2 = manager2.getCacheNames();

2 Cache 配置文件的加载方式

CacheManager 的构造函数如下:

(1) 无参

CacheManager manager = new CacheManager();

(2) 通过配置文件

CacheManager manager = new CacheManager("src/config/ehcache.xml");

(3) 通过资源

URL url = getClass().getResource("/anotherconfigurationname.xml");

CacheManager manager = new CacheManager(url);

(4) 通过输入流

InputStream fis = new FileInputStream(new File("src/config/ehcache.xml").getAbsolutePath());

try {

CacheManager manager = new CacheManager(fis);

} finally {

fis.close();

}

3 、增加或删除 Cache

增加 Cache 有两种方式:

(1) 使用 CacheManageraddCache(String)

CacheManager singletonManager = CacheManager.create();

singletonManager.addCache("testCache");

Cache test = singletonManager.getCache("testCache");

(2) 新增一个 Cache ,然后加到 CacheManager 中, Cache 在加入 CacheManager 之前是不能使用的

CacheManager singletonManager = CacheManager.create();

Cache memoryOnlyCache = new Cache("testCache", 5000, false, false, 5, 2);

manager.addCache(memoryOnlyCache);

Cache test = singletonManager.getCache("testCache");

CachaManager 中删除 Cache

CacheManager singletonManager = CacheManager.create();

singletonManager.removeCache("sampleCache1");

4 、关闭 CacheManager

CacheManager 在使用之后应该关闭,虽然有自己的 shutdown hook ,建议在程序中手动关闭。

CacheManager.getInstance().shutdown();

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值