实现一个简单的缓存,具有缓存添加,获取,删除,过期自动删除等,主要存储方式为Map
首先建一个缓存数据实体类,用到了lombok消除get set 和全参构造函数
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@AllArgsConstructor
public class CacheEntity {
/**
* 数据主体
*/
private Object data;
/**
* 超时时长,0永不超时
*/
private Long timeout;
/**
* 缓存设置初始时间
*/
private Long initialTime;
}
再建一个缓存具体操作接口,支持对缓存的各种操作
import java.util.Map;
import java.util.Set;
public interface CacheManager {
/**
* 存入缓存
* @param key
* @param data
*/
void put(String key, CacheEntity cacheData);
/**
* 存入缓存
* @param key
* @param data
* @param timeout
*/
void put(String key, Object data, Long timeout);
/**
* 获取缓存
* @param key
* @return
*/
CacheEntity getCacheByKey(String key);