我们如何在@Cachable中使用其他类的静态字段作为Key

class Keys {
    public static String CACHE_KEY = 'MY_KEY';
}

class MyClass {

@Cachable(value="TestValue",key="#Keys.CACHE_KEY")
public void method(){

}

}

最佳答案

使用keyGenerator代替,尽管您显然不需要常量密钥。

   @Cachable(value="TestValue",keyGenerator ="keyGenerator")
    public void method(){

    }

    @Bean
    public KeyGenerator keyGenerator() {
      return new KeyGenerator() {
        @Override
        public Object generate(Object o, Method method, Object... params) {
          return CACHE_KEY ;
        }
      };
    }

关于java - Cachable:如何在Spring Caching中使用其他类的静态字段作为Key,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40237694/

10-09 12:36