如何为测试目的关闭ehcache

noM*_*MAD 3 java ehcache

我有一个ehcache的实现,它不使用xml中的任何配置,但如下所示:

private Ehcache cache;

constructor {
  cache = CacheManager.getInstance().addCacheIfAbsent("nameOfCache");
  CacheConfiguration config = cache.getCacheConfiguration();
  config.eternal("false")
  config.setTimeToLiveSeconds(<someTime>);
}
Run Code Online (Sandbox Code Playgroud)

现在,我之前使用过番石榴缓存,我知道通过将驱逐时间设置0为番石榴缓存,它会关闭缓存.但是通过阅读有关ehcache的文档,我理解它不是同一个案例.还有其他方法可以关闭缓存吗?

Kur*_*hke 14

该的Ehcache常见问题解答,您可以设置net.sf.ehcache.disabled系统属性来将元素添加到高速缓存抑制的Ehcache.由于没有元素将添加到缓存中,因此每个缓存请求都会导致缓存未命中,从而提供您正在寻找的行为.

如果从命令行启动JVM,可以像下面这样设置属性:

-Dnet.sf.ehcache.disabled=true
Run Code Online (Sandbox Code Playgroud)