在实际项目中,我们经常会需要使用到缓存。一般来说,缓存介质是内存;而常见的DB将数据存储在硬盘中的;缓存读取是电脉冲,而硬盘读取是机械地读取转动的硬盘,速度差异是上百倍的。所以往往可以通过缓存,对经常用到的数据进行访问,以提高速度。
创建缓存实际上就是针对两个对象,1. Cache对象,即一个缓存对象;2. CacheManager对象,即一个管理不同缓存的对象,其核心实际上就是一个Map,用来保存与获取不同缓存。
最简单的缓存 实现如下:
/**
* 项目名称:
* 文件说明:创建一个缓存管理器 <span style="font-family: Arial, Helvetica, sans-serif;"></span>
* 主要特点:
* 版本号:1.0
* 创建时间:2013-12-3
**/
package NBOffer;
import java.util.HashMap;
public class CacheManager {
static HashMap<String,Cache> cacheMap=new HashMap<String,Cache>();
public static Cache getCache(String id)
{
return cacheMap.get(id);
}
public static void putCache(Cache cache)
{
cacheMap.put(cache.id, cache);
}
public static void main(String[] args) {
Cache cache1=new Cache("1","A1");
Cache cache2=new Cache("2","A2");
CacheManager.putCache(cache1);
CacheManager.putCache(cache2);
CacheManager.getCache("1").showInfo();
}
}
class Cache
{
String id;//相当于主键
Object val;
public Cache(String id)
{
new Cache(id,null);
}
public Cache(String id,Object val)
{
this.id=id;
this.val=val;
}
public void setValue(Object val)
{
this.val=val;
}
public void showInfo()
{
System.out.println("Cache的ID是: "+id+" Cache的值是: "+val);
}
}
实际上是getCache