go4it

just do it

Ehcache学习(三)关键类

http://blog.csdn.net/mgoann/archive/2009/04/17/4086534.aspx

Ehcache关键类

简介

Ehcache中的CacheManager是用来管理Cache的。而Cache中包含元素Element,而Element实质上就是一个键值对。Cache在物理方面的实现有内存实现和磁盘实现。

CacheManager

CacheManager包含Cache,而Cache反过来构成了CacheManager的要素。

·   CacheManager创建模式:CacheManger创建模式包含singleton和instance俩种。

·       Simgleton Mode

从字面可理解为单例模式,这种模式只允许创建一个CacheManger实例。

·       Instance Mode

那这种模式从字面上理解也应该是实例化模式了。从Ehcache-1.2以来,CacheManager有多种静态创建方法。这样我们就可以同时创建多个复杂的不同配置的CacheManager。

如果只是用内存来存储Cache,那么没有什么需要你特别考虑的。如果是用磁盘来缓存Cache的话,你就必须为CacheManager指定的磁盘路径。当一个新的CacheManager被创建时,必须要确保磁盘路径没有被别的CacheManager使用。如果重复使用磁盘路径,这个时候就会抛出CacheException。如果CacheManger配置成集群模式的,还要注意端口的指定。

·       Singletion和Instance混用

如果一个应用程序通过构造方法创建了一个CacheManager的实例,也调用了静态创建方法,这个时候会,没调用一次静态创建方法就会返回一个CacheManager的Singleton实例,所有的这些实例将会共存。

Ehcache

Ehcache是一个接口,所有的Cache都实现了Ehcache。每个Cache都有自己的名字和特定的属性以及包含着Element元素。

Ehcache中的Cache代表一块特定的缓存区域或是缓存系统

Cache的Element元素可以存储到MemoryStore(内存)中,也可以写到DiskStore(磁盘)中。

Element

每一个Element对应一个缓存的原子实体。它有key、value以及访问记录属性。Element可以被put进Cache也可以remove出Cache。通过配置Cache可定制Element的失效以及移除策略。

在Ehcache-1.2 API中要求存储对象要可序列化。没有序列化的对象不可以存储到DiskStore(磁盘)中,也不能被拷贝。

在Element类中注意到有俩个方法getOjbectValue和getKeyValue,这个方法都是从缓存中取得Element元素的方法,唯一区别就是一个是用来取得序列化对象,另外一个是不可序列化对象。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/mgoann/archive/2009/04/17/4086534.aspx

posted on 2009-07-09 10:51  cxccbv  阅读(721)  评论(0)    收藏  举报

导航