Spring 缓存常量作为键

Spring cache constant as a key

作为我代码的一部分,我有一个参数为空的方法。例如,

public MasterData fetchMasterData() {
// DO something.
}

我想添加一个@Cacheable,键为'masterdata'。我尝试了以下方法,但它寻找一个名为 'masterdata' 的 bean。 我试过了 @Cacheable(cache="master", key="masterdata")

如果我保留 key 属性,我知道它将作为空键。但我想明确给出一个常量作为键。

有办法吗?

key 属性是一个 SpEL expression,所以如果您希望密钥是 masterdata,您可以这样写

@Cacheable(cache="master", key="'masterdata'")
public MasterData fetchMasterData() { ... }