Ehcache怎样在Element级上控制过期时间

Ehcache怎样在Element级上控制过期时间,第1张

但是实际的情况是。ehcache依然能获取到相关数据

当你去调用ehcacheput动作时,会调用applyDefaultsToElementWithoutLifespanSetelement方法内容:if !elementisLifespanSet Element里面有一个isLifespan的参数,默认是为false的。。

false的时候Ehcache会element的过期时间设置为默认配置的

当你通过new ElementObject key, Object value,

boolean eternal, int timeToIdleSeconds, int timeToLiveSeconds

去实例化的时候。。根本不会去设置isLifespan这个参数,而是采用默认的过期策略的。。

但是去调用element 的。setTimeToLive,setTimeToIdle,setEternal方法时,

确会去设置这个参数。。

ElementsetEternalboolean eternal

这样的话。。就会去单独去设置Element控制过期时间,而不会用默认的配置去覆盖设置

个人觉得这个ehcache存在的一个BUG。。

既然在调用element 的。setTimeToLive,setTimeToIdle,setEternal方法时,会去设置这个参数,那么如果在构造的时候也应该调用这些方法。

而不应该应用到element级别上

首先要说的是,spring中,需要手动配置缓存信息。不知道你配置了没有 例如如下配置: hibernate.cache.use_query_cache=true hibernate.cache.use_second_level_cache=true hibernate.cache.region.factory_class=org.hibernate.cache.EhCacheRe...


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11239406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存