【叨、校长】java缓存实例、自己做的一个缓存实例
自己写的一个缓存类、通俗易懂、老少皆宜!--叨、校长
package com.master.common;import java.util.List;/** * 一个缓存实例 * @example * String name="test"; * List list=null; *CacheData c=CacheData.matchCahceData(name); *if(c.getData()==null){ *list=jokeService.findJokeList();//从数据库获取数据 *c.setData(list); *}else{ *list=c.getData(); *} * @author 叨、校长 * @datatime 2012-11-04 */public class CacheData{//最大缓存记录private final static int MAX_SIZE=10;private static CacheData[] datas=new CacheData[MAX_SIZE];//每条缓存的名称private final String name;//每条缓存的数据private List data=null;//使用单例模式、防止外部实例化该类private CacheData(String name){this.name=name;}public String getName(){return name;}public List getData(){return data;}public void setData(List data) {this.data = data;}//判读缓存中是否有该名称的记录,如果没有则添加缓存实例并且返回该缓存实例//如果缓存满了,则把第一条记录更新为新缓存,并且返回该缓存实例public static CacheData matchCahceData(String name){CacheData cache;int i=0;int j=1;for(;i<MAX_SIZE;i++){if(datas[i]!=null){if(datas[i].getName().equals(name)){return datas[i];}j++;}}cache=new CacheData(name);if(j==MAX_SIZE){datas[0]=cache;}else{datas[j--]=cache;}return cache;}}??
1 楼 lpy3654321 前天 是什么思路'能说说吗 2 楼 wb1991wb 前天 就是用一个数组就存储频繁读取的数据、加假如有一个频繁的查询功能、则把第一次读取的数据保存在服务端的内存里面、下次读取直接从内存里面拿! 3 楼 wb1991wb 前天 lpy3654321 写道是什么思路'能说说吗