2 回答

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊
如果您希望緩存內(nèi)容在沒有交互的情況下消失,那確實(shí)不會(huì)發(fā)生。Ehcache 沒有對(duì)過期項(xiàng)目的背景檢查,可以急切地刪除它們。
而是內(nèi)聯(lián)刪除過期項(xiàng)目,無論何時(shí)您嘗試訪問它們,或者如果在寫入緩存期間,由于緩存已滿,驅(qū)逐開始。

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
能夠使用 ehcache-JSR-107 包裝器解決此問題。下面是java配置
@Component
public class CachingSetup implements JCacheManagerCustomizer {
@Override
public void customize(CacheManager cacheManager)
{
cacheManager.createCache("trans", new MutableConfiguration<>()
.setExpiryPolicyFactory(CreatedExpiryPolicy.factoryOf(new Duration(SECONDS, 10)))
.setStoreByValue(false)
.setStatisticsEnabled(true));
}
}
絨球
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId> <!--Starter for using Spring Framework's caching support-->
</dependency>
<dependency>
<groupId>javax.cache</groupId> <!-- JSR-107 API-->
<artifactId>cache-api</artifactId>
</dependency>
<dependency>
<groupId>org.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
添加回答
舉報(bào)