标签: spring caching ehcache
我想根据密钥的前缀清除缓存。例如,我有一个缓存的两个对象的复合键,如({#obj1,#obj2})。清除缓存时,我想基于obj1值清除。就像用密钥前缀obj1清除缓存中的所有内容一样。有可能吗?
({#obj1,#obj2})
obj1
答案 0 :(得分:1)
除了整个缓存中的迭代器,不是。另一种解决方案可能是为每个前缀创建一个缓存。
最后,另一种解决方案是使用商店,它允许查询并在辅助字段上有索引。这将允许您根据前缀字段清除项目。你不会获得缓存的其他好处(驱逐,到期),但它会做你想要的。