7点微信公众号:请点这里。7点测试网QQ总群:277957570。

7点测试网

 找回密码
 注册7点

QQ登录

只需一步,快速开始

查看: 746|回复: 0
打印 上一主题 下一主题

Ehcache关键类

[复制链接]
跳转到指定楼层
1#
发表于 2013-12-3 14:49:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
简介






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元素的方法,唯一区别就是一个是用来取得序列化对象,另外一个是不可序列化对象。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
您需要登录后才可以回帖 登录 | 注册7点

本版积分规则

QQ|小黑屋|手机版|Archiver|7点测试网 ( 京ICP备09084002号

GMT+8, 2018-2-21 11:25 , Processed in 0.258139 second(s), 27 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表