Class BeanTypeAutoProxyCreator

  • All Implemented Interfaces:
    Serializable, org.springframework.aop.framework.AopInfrastructureBean, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor, org.springframework.beans.factory.config.SmartInstantiationAwareBeanPostProcessor, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware, org.springframework.core.Ordered

    public class BeanTypeAutoProxyCreator
    extends org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator
    implements org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware
    类BeanTypeAutoProxyCreator.java的实现描述:使用配置类型代替Springframework中配置名称的实现
    Author:
    hualiang.lihl 2011-12-31 上午10:48:20
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator

        DO_NOT_PROXY, logger, PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS
      • Fields inherited from interface org.springframework.core.Ordered

        HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void afterPropertiesSet()  
      protected Object[] getAdvicesAndAdvisorsForBean​(Class beanClass, String beanName, org.springframework.aop.TargetSource targetSource)
      Identify as bean to proxy if the bean name is in the configured list of names.
      protected boolean isMatch​(String beanName, String mappedName)
      Return if the given bean name matches the mapped name.
      void setApplicationContext​(org.springframework.context.ApplicationContext context)  
      void setTargetBeanType​(Class<?> targetClass)  
      • Methods inherited from class org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator

        advisorsPreFiltered, buildAdvisors, createProxy, customizeProxyFactory, determineCandidateConstructors, getBeanFactory, getCacheKey, getCustomTargetSource, getEarlyBeanReference, isFrozen, isInfrastructureClass, postProcessAfterInitialization, postProcessAfterInstantiation, postProcessBeforeInitialization, postProcessBeforeInstantiation, postProcessPropertyValues, predictBeanType, setAdvisorAdapterRegistry, setApplyCommonInterceptorsFirst, setBeanFactory, setCustomTargetSourceCreators, setFrozen, setInterceptorNames, shouldProxyTargetClass, shouldSkip, wrapIfNecessary
      • Methods inherited from class org.springframework.aop.framework.ProxyProcessorSupport

        evaluateProxyInterfaces, getOrder, getProxyClassLoader, isConfigurationCallbackInterface, isInternalLanguageInterface, setBeanClassLoader, setOrder, setProxyClassLoader
      • Methods inherited from class org.springframework.aop.framework.ProxyConfig

        copyFrom, isExposeProxy, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setOpaque, setOptimize, setProxyTargetClass, toString
    • Constructor Detail

      • BeanTypeAutoProxyCreator

        public BeanTypeAutoProxyCreator()
    • Method Detail

      • setTargetBeanType

        public void setTargetBeanType​(Class<?> targetClass)
        Parameters:
        targetClass - the targetClass to set
      • setApplicationContext

        public void setApplicationContext​(org.springframework.context.ApplicationContext context)
        Specified by:
        setApplicationContext in interface org.springframework.context.ApplicationContextAware
      • getAdvicesAndAdvisorsForBean

        protected Object[] getAdvicesAndAdvisorsForBean​(Class beanClass,
                                                        String beanName,
                                                        org.springframework.aop.TargetSource targetSource)
        Identify as bean to proxy if the bean name is in the configured list of names.
        Specified by:
        getAdvicesAndAdvisorsForBean in class org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator
      • isMatch

        protected boolean isMatch​(String beanName,
                                  String mappedName)
        Return if the given bean name matches the mapped name.

        The default implementation checks for "xxx*", "*xxx" and "*xxx*" matches, as well as direct equality. Can be overridden in subclasses.

        Parameters:
        beanName - the bean name to check
        mappedName - the name in the configured list of names
        Returns:
        if the names match
        See Also:
        PatternMatchUtils.simpleMatch(String, String)
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        Exception