@Target(value=TYPE) @Retention(value=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.
| Modifier and Type | Optional Element and Description | 
|---|---|
| String | cacheManagerThe bean name of the custom  CacheManagerto use to
 create a defaultCacheResolverif none
 is set already. | 
| String[] | cacheNamesNames of the default caches to consider for caching operations defined
 in the annotated class. | 
| String | cacheResolverThe bean name of the custom  CacheResolverto use. | 
| String | keyGeneratorThe bean name of the default  KeyGeneratorto
 use for the class. | 
public abstract String[] cacheNames
If none is set at the operation level, these are used instead of the default.
May be used to determine the target cache (or caches), matching the qualifier value or the bean names of a specific bean definition.
public abstract String keyGenerator
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.
public abstract String cacheManager
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.
SimpleCacheResolverpublic abstract String cacheResolver
CacheResolver to use.
 If no resolver and no cache manager are set at the operation level, this one is used instead of the default.