论坛首页 Java企业应用论坛

基于模版方法的简单缓存功功能

浏览 2923 次
精华帖 (0) :: 良好帖 (9) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-03-27  
简单缓存功能

需要功能:
投票功能要记录当前投票的访问数量,并且每隔一段时间记录到库中(断电、重启服务等造成数据丢失)。

实现功能:
1. 缓存功能
2. 间隔一段时间保存数据到库
3. 当达到容量就清除最不常访问的缓存

说明:
这里还有问卷和其他类是的东西需要缓存,所以这里是模版方法的实现。CacheManager缓存管理的抽象类,是整个缓存功能的主骨架。

介绍:
1. 实线上面是两个类是模版方法的用法。当voteCacheManager实例化会调用startTask(),startTask方法要调用startTaskHandle方法,startTaskHandle是抽象方法需要子类去实现具体的操作。我这里的就是执行保存投票的访问数量到数据库
2. BaseCache基于concurrentHashmap缓存容器.
3. Cache放置缓存对象并增加一个时间戳
4. Vote就是投票对象一个普通javaBean



代码:
实现startTaskHandle方法,实现和自己业务相关的逻辑。
public class VoteCacheManager extends CacheManager<Vote> {

	@Override
	void startTaskHandle() {
		saveVisitCount();
	}

	private VoteCacheManager() {
		this.init();
	}

	/**
	 * 更新缓存内容到数据库
	 * 
	 */
	public void saveVisitCount() {
		//
	}
}

模拟:
VoteCacheManager里面有一个main方法模拟了投票访问过程。附件里有源码,这功能只是简单的测试了一下,能用而已 =。=

结束:
实现的简单功能对初学者还是有点点用,文档写得不好讲究看了


.
   发表时间:2012-03-28  
支持共享!
0 请登录后投票
   发表时间:2012-03-28  
lz,你这个图怎么跟你的描述不一样呢
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics