Class BeanTypeAutoProxyCreator

java.lang.Object
org.springframework.aop.framework.ProxyConfig
org.springframework.aop.framework.ProxyProcessorSupport
org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator
com.alibaba.druid.support.spring.stat.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:
  • 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
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • BeanTypeAutoProxyCreator

      public BeanTypeAutoProxyCreator()
  • Method Details

    • 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