【发布时间】:2015-09-12 19:30:59
【问题描述】:
我有一个要求,我必须从特定缓存中删除一个以某个值开头的键,例如xyz。
实际密钥可以是xyz12345、xyzehrek、xyz5eei7等。
我正在使用 Spring 注释从特定缓存中删除一个值。我不想从缓存中删除所有内容,只删除以xyz开头的键的对象。
@CacheEvict(value="someCache", key="#keyStartsWith")
public void removeValueFromCache(String keyStartsWith) {
}
我尝试在密钥中传递"^#keyStartsWith"。但它不起作用。
【问题讨论】:
-
你尝试过使用@CacheEvict 的条件属性吗?
-
你能提供更多的细节吗?
-
试试这个,如果它可以帮助...docs.spring.io/spring/docs/current/javadoc-api/org/…
-
试过很多。但它有局限性。除了像 Abhishek 在下面建议的那样以老式方式实施之外,别无选择。