2017-05-07 162 views
0

我是新的緩存技術在春季啓動,我在我的項目中使用@cache。現在我有一個新的需求,即需要設置緩存TTL並且TTL必須在關鍵基礎上擴展。春季啓動自定義緩存TTL

E.g.如果我將緩存過期時間設置爲5分鐘,則在緩存過期之前,必須檢查傳入密鑰是否存在於緩存中,或者如果存在於緩存中,則TTL必須延長5分鐘,否則應該清除或清除緩存並創建新的緩存。

我希望我能明確我的要求,請提供適合我需求的完美例子的解決方案。我已經提到了一些像Ecache自定義到期的鏈接,但我對如何在關鍵基礎上傳遞自定義到期時感到困惑。

http://www.ehcache.org/documentation/3.1/expiry.html

預先感謝指導我,
切塔尼亞

回答

0

隨着春天開機,你就需要使用@Cacheable你的方法調用如

@Cacheable(names = "eventCache", key = "#eventId") 
Event getByEventId(String eventId); 

在此之前,您需要創建一個Spring CacheManager bean並初始化緩存。請參考此StackOverflow鏈接,瞭解如何使用EhCache創建緩存實例。