发布网友
共1个回答
热心网友
CacheManager.getCache()返回具有getKeys()等方法,返回缓存键,你可以遍历列表。来检索一个已经存储的(而不是使用实际的对象的 编辑: 据春它看起来并不像他们永远不会支持Cache.getKeys(),所以你必须要转换为基础提供。 像这样:public boolean contains(String cacheName, Object o) {
net.sf.ehcache.EhCache cache = (net.sf.ehcache.EhCache) org.springframework.cache.CacheManager.getCache(cacheName).getNativeCache();
for (Object key: cache.getKeys()) {
Element element = cache.get(key);
if (element != null && element.getObjectValue().equals(o)) {
return true;
}
}
return false;
}