我有一个需要一些缓存的应用程序,对于一些半静态数据,我希望它们在刷新之前在缓存中停留最长时间(例如 10 分钟)。我的系统只是检索数据,从不更新它,所以我不知道何时使用该属性刷新缓存。在 OSCache 文档中,可以使用编程 API 和 taglib 的配置来设置这样的到期时间,但 spring-modules 文档对此事没有提及。
有谁知道是否/如何做到这一点?
看看 https://springmodules.dev.java.net/docs/reference/0.8/html/cache.html
3.5.2. 缓存模型他们提供了一个例子 org.springmodules.cache.provider.jcs.JcsCachingModel
尝试使用 org.springmodules.cache.provider.oscache.OsCacheCachingModel
来自http://www.koders.com/java/fidB7163A5070666F5BD98F43D4324011D1A969ABD3.aspx?s=mcall%3Astring的源代码 给了我属性
私有字符串 cronExpression;
私有字符串 [] 组;
私有整数刷新周期;
所以你需要设置“refreshPeriod”属性
我想到了。答案隐藏在 ehcache 自己的配置文件中。通过将属性“timeToLiveSeconds”设置为例如“600”,缓存中的元素将在十分钟后过期。