我正在使用EhCache开发一个简单的缓存功能.有一个通用基类实现我的缓存接口(BECache):
public class EhCacheBase<K, V> implements BECache<K, V> {
private static CacheManager cacheManager;
private String cacheName;
public EhCacheBase(String cacheName) {
this.cacheName = cacheName;
}
public void cache(K key, V value) {
Cache cache = cacheManager.getCache(cacheName);
if (cache == null) {
throw new NullPointerException("Failed to obtain cache: " + cacheName);
}
Element element = new Element(key, value);
cache.put(element);
}
Run Code Online (Sandbox Code Playgroud)
目的是将缓存定义如下:
public class ObjectCache extends EhCacheBase<String, Object>{
public ObjectCache (String cacheName) {
super(cacheName);
}
}
Run Code Online (Sandbox Code Playgroud)
假设'cacheName'在ehcache.xml中定义,我得到了一个用于缓存某些对象的好类.
我正在尝试为'EhCacheBase.cache(...)'方法编写一个测试,以确保检索缓存并放置一个值(使用Mockito):
private static final String CACHE_NAME …Run Code Online (Sandbox Code Playgroud)