我正在创建这样的EHCache实例:
CacheManager cacheMgr = CacheManager.getInstance();
cacheMgr.setName("myCache");
CacheConfiguration cacheConfig = new CacheConfiguration(getCacheName(), 1)
.eternal(true)
.overflowToOffHeap(false)
.timeToLiveSeconds(0)
.maxEntriesLocalHeap(1)
.timeToIdleSeconds(0) .diskExpiryThreadIntervalSeconds(0);
Cache merchantCache = new Cache(cacheConfig);
cacheMgr.addCache(merchantCache);
merchantCache.put(new Element("key", "value"));
merchantCache.put(new Element("key1", "value"));
merchantCache.put(new Element("key2", "value"));
运行这段代码,我没有任何异常。因为我创建了
maxEntriesLocalHeap
= 1的Cache,所以希望得到一个异常,因为我在其中放置了三个元素。谁能让我知道我在做什么错?
谢谢
最佳答案
我相信您需要按照以下方式使用maxEntriesInCache
代替maxEntriesLocalHeap
:http://ehcache.org/apidocs/net/sf/ehcache/config/CacheConfiguration.html#maxEntriesInCache
编辑:对于非群集的ehcache使用:maxElementsInMemory