春季启动自定义缓存TTL
问题描述:
我是新的缓存技术在春季启动,我在我的项目中使用@cache
。现在我有一个新的需求,即需要设置缓存TTL并且TTL必须在关键基础上扩展。春季启动自定义缓存TTL
E.g.如果我将缓存过期时间设置为5分钟,则在缓存过期之前,必须检查传入密钥是否存在于缓存中,或者如果存在于缓存中,则TTL必须延长5分钟,否则应该清除或清除缓存并创建新的缓存。
我希望我能明确我的要求,请提供适合我需求的完美例子的解决方案。我已经提到了一些像Ecache自定义到期的链接,但我对如何在关键基础上传递自定义到期时感到困惑。
http://www.ehcache.org/documentation/3.1/expiry.html
预先感谢指导我,
切塔尼亚
答
随着春天开机,你就需要使用@Cacheable你的方法调用如
@Cacheable(names = "eventCache", key = "#eventId")
Event getByEventId(String eventId);
在此之前,您需要创建一个Spring CacheManager bean并初始化缓存。请参考此*链接,了解如何使用EhCache创建缓存实例。