PerpetualCache 是一个具有基本功能的缓存类,内部使用了 HashMap 实现缓存功能。
它的源码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| public class PerpetualCache implements Cache { private final String id; private Map<Object, Object> cache = new HashMap<Object, Object>(); public PerpetualCache(String id) { this.id = id; } @Override public String getId() { return id; } @Override public int getSize() { return cache.size(); } @Override public void putObject(Object key, Object value) { // 存储键值对到 HashMap cache.put(key, value); } @Override public Object getObject(Object key) { // 查找缓存项 return cache.get(key); } @Override public Object removeObject(Object key) { // 移除缓存项 return cache.remove(key); } @Override public void clear() { cache.clear(); } }
|
上面是 PerpetualCache 的全部代码,很简单。