Annotation Interface CacheConfig


@Target(TYPE) @Retention(RUNTIME) @Documented public @interface CacheConfig
@CacheConfig provides a mechanism for sharing common cache-related settings at the class level.

When this annotation is present on a given class, it provides a set of default settings for any cache operation defined in that class.

Since:
4.1
Author:
Stephane Nicoll, Sam Brannen
See Also:
  • Element Details

    • cacheNames

      String[] cacheNames
      Names of the default caches to consider for caching operations defined in the annotated class.

      If none is set at the operation level, these are used instead of the default.

      Names may be used to determine the target cache(s), to be resolved via the configured cacheResolver() which typically delegates to CacheManager.getCache(java.lang.String). For further details see Cacheable.cacheNames().

      Default:
      {}
    • keyGenerator

      String keyGenerator
      The bean name of the default KeyGenerator to use for the class.

      If none is set at the operation level, this one is used instead of the default.

      The key generator is mutually exclusive with the use of a custom key. When such key is defined for the operation, the value of this key generator is ignored.

      Default:
      ""
    • cacheManager

      String cacheManager
      The bean name of the custom CacheManager to use to create a default CacheResolver if none is set already.

      If no resolver and no cache manager are set at the operation level, and no cache resolver is set via cacheResolver(), this one is used instead of the default.

      See Also:
      Default:
      ""
    • cacheResolver

      String cacheResolver
      The bean name of the custom CacheResolver to use.

      If no resolver and no cache manager are set at the operation level, this one is used instead of the default.

      Default:
      ""