我希望使用JAVA代码清除缓存。
为此,我编写了以下代码:
为此,我编写了以下代码:
public void clearCache(){
CacheManager.getInstance().clearAll();
}
这段代码正确吗?有什么途径可以确认它运行良好吗?谢谢。
void clearAll()
清除CacheManager中所有缓存的内容,但不删除任何缓存。
如果您想测试它,可以将一些元素添加到缓存中,调用clearCache()
,然后尝试获取值。get()
方法应该只返回null
。 CacheManager cacheManager = CacheManager.getInstance();
Ehcache cache = new Cache(cacheManager.getConfiguration().getDefaultCacheConfiguration());
cache.setName("cacheName");
cacheManager.addCache(cache);
Element element = new Element(key, value)
,并简单调用cache.put(element)
。
如果您的缓存变量不再可见,但是您的cacheManager仍然存在,则可以使用cacheManager.getCache(cacheName).put(element)
执行相同的操作。CacheManager manager = CacheManager.getInstance();
Ehcache cache = manager.getCache(cacheName);
cache.removeAll();
有两种方法可以实现这个目标: