Class CacheProxyFactoryBean
java.lang.Object
org.springframework.aop.framework.ProxyConfig
org.springframework.aop.framework.AbstractSingletonProxyFactoryBean
org.springframework.cache.interceptor.CacheProxyFactoryBean
- All Implemented Interfaces:
Serializable,org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanClassLoaderAware,org.springframework.beans.factory.BeanFactoryAware,org.springframework.beans.factory.FactoryBean<Object>,org.springframework.beans.factory.InitializingBean,org.springframework.beans.factory.SmartInitializingSingleton
public class CacheProxyFactoryBean
extends org.springframework.aop.framework.AbstractSingletonProxyFactoryBean
implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.SmartInitializingSingleton
Proxy factory bean for simplified declarative caching handling.
This is a convenient alternative to a standard AOP
ProxyFactoryBean
with a separate CacheInterceptor definition.
This class is designed to facilitate declarative cache demarcation: namely, wrapping
a singleton target object with a caching proxy, proxying all the interfaces that the
target implements. Exists primarily for third-party framework integration.
Users should favor the cache: XML namespace
@Cacheable annotation.
See the
declarative annotation-based caching
section of the Spring reference documentation for more information.
- Since:
- 3.1
- Author:
- Costin Leau, Juergen Hoeller
- See Also:
-
ProxyFactoryBeanCacheInterceptor- Serialized Form
-
Field Summary
Fields inherited from interface org.springframework.beans.factory.FactoryBean
OBJECT_TYPE_ATTRIBUTE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected ObjectvoidsetBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) voidsetCacheManager(CacheManager cacheManager) Set theCacheManagerto use to create a defaultCacheResolver.voidsetCacheOperationSources(CacheOperationSource... cacheOperationSources) Set one or more sources to find cache operations.voidsetCacheResolver(CacheResolver cacheResolver) Set the defaultCacheResolverthat this cache aspect should delegate to if no specific cache resolver has been set for the operation.voidsetKeyGenerator(KeyGenerator keyGenerator) Set the defaultKeyGeneratorthat this cache aspect should delegate to if no specific key generator has been set for the operation.voidsetPointcut(org.springframework.aop.Pointcut pointcut) Set a pointcut, i.e.Methods inherited from class org.springframework.aop.framework.AbstractSingletonProxyFactoryBean
afterPropertiesSet, createTargetSource, getObject, getObjectType, isSingleton, postProcessProxyFactory, setAdvisorAdapterRegistry, setBeanClassLoader, setPostInterceptors, setPreInterceptors, setProxyClassLoader, setProxyInterfaces, setTargetMethods inherited from class org.springframework.aop.framework.ProxyConfig
copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass, toString
-
Constructor Details
-
CacheProxyFactoryBean
public CacheProxyFactoryBean()
-
-
Method Details
-
setCacheOperationSources
Set one or more sources to find cache operations. -
setKeyGenerator
Set the defaultKeyGeneratorthat this cache aspect should delegate to if no specific key generator has been set for the operation.The default is a
SimpleKeyGenerator.- Since:
- 5.0.3
- See Also:
-
setCacheResolver
Set the defaultCacheResolverthat this cache aspect should delegate to if no specific cache resolver has been set for the operation.The default resolver resolves the caches against their names and the default cache manager.
- Since:
- 5.0.3
- See Also:
-
setCacheManager
Set theCacheManagerto use to create a defaultCacheResolver. Replace the currentCacheResolver, if any.- Since:
- 5.0.3
- See Also:
-
setPointcut
public void setPointcut(org.springframework.aop.Pointcut pointcut) Set a pointcut, i.e. a bean that triggers conditional invocation of theCacheInterceptordepending on the method and attributes passed.Note: Additional interceptors are always invoked.
- See Also:
-
AbstractSingletonProxyFactoryBean.setPreInterceptors(java.lang.Object[])AbstractSingletonProxyFactoryBean.setPostInterceptors(java.lang.Object[])
-
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) - Specified by:
setBeanFactoryin interfaceorg.springframework.beans.factory.BeanFactoryAware
-
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- Specified by:
afterSingletonsInstantiatedin interfaceorg.springframework.beans.factory.SmartInitializingSingleton
-
createMainInterceptor
- Specified by:
createMainInterceptorin classorg.springframework.aop.framework.AbstractSingletonProxyFactoryBean
-