类 ExposeBeanNameAdvisors

java.lang.Object
infra.aop.interceptor.ExposeBeanNameAdvisors

public abstract class ExposeBeanNameAdvisors extends Object
Convenient methods for creating advisors that may be used when autoproxying beans created with the IoC container, binding the bean name to the current invocation. May support a bean() pointcut designator with AspectJ.

Typically used in auto-proxying, where the bean name is known at proxy creation time.

从以下版本开始:
4.0 2022/3/9 22:22
作者:
Rod Johnson, Juergen Hoeller, Harry Yang
另请参阅:
  • NamedBean
  • 字段详细资料

    • BEAN_NAME_ATTRIBUTE

      private static final String BEAN_NAME_ATTRIBUTE
      Binding for the bean name of the bean which is currently being invoked in the ReflectiveMethodInvocation userAttributes Map.
  • 构造器详细资料

    • ExposeBeanNameAdvisors

      public ExposeBeanNameAdvisors()
  • 方法详细资料

    • getBeanName

      public static String getBeanName() throws IllegalStateException
      Find the bean name for the current invocation. Assumes that an ExposeBeanNameAdvisor has been included in the interceptor chain, and that the invocation is exposed with ExposeInvocationInterceptor.
      返回:
      the bean name (never null)
      抛出:
      IllegalStateException - if the bean name has not been exposed
    • getBeanName

      public static String getBeanName(MethodInvocation mi) throws IllegalStateException
      Find the bean name for the given invocation. Assumes that an ExposeBeanNameAdvisor has been included in the interceptor chain.
      参数:
      mi - the MethodInvocation that should contain the bean name as an attribute
      返回:
      the bean name (never null)
      抛出:
      IllegalStateException - if the bean name has not been exposed
    • createAdvisorWithoutIntroduction

      public static Advisor createAdvisorWithoutIntroduction(String beanName)
      Create a new advisor that will expose the given bean name, with no introduction.
      参数:
      beanName - bean name to expose
    • createAdvisorIntroducingNamedBean

      public static Advisor createAdvisorIntroducingNamedBean(String beanName)
      Create a new advisor that will expose the given bean name, introducing the NamedBean interface to make the bean name accessible without forcing the target object to be aware of this IoC concept.
      参数:
      beanName - the bean name to expose