在ehcache中条目过期时调用事件

时间:2014-08-25 10:13:16

标签: java ehcache

我想实现一种缓存机制,其中缓存中的每个条目都有自己的到期时间,当特定条目过期时我也需要调用一个事件,该事件也将从数据库中删除此条目。到目前为止我尝试过EhCache,我无法满足我的所有要求(如上所述)。我能够为每个条目创建一个具有固定到期时间的缓存,但是我无法在到期事件上调用任何方法。所以我的问题是:

1)是否可以为ehcahce中的每个条目附加“生存时间”?如果是,请提及如何实现它。 2)我是否需要手动调用CacheEventListener的方法“notifyElementExpired”,否则一旦条目过期就会触发它? 我们非常感谢示例代码。提前谢谢。

1 个答案:

答案 0 :(得分:0)

没有过期线程,专业人士在后台积极过期,但你可以轻松自己添加并使用net.sf.ehcache.Cache#getKeysWithExpiryCheck。

Ehcache中的到期只发生在内联(或至少对于非集群用例,如果你使用兵马俑集群,则不再完全正确)。