org.springframework.aop

## 接口 Advisor

- 所有已知子接口:
    InstantiationModelAwarePointcutAdvisor, IntroductionAdvisor, PointcutAdvisor
  所有已知实现类:
    AbstractBeanFactoryPointcutAdvisor, AbstractGenericPointcutAdvisor, AbstractPointcutAdvisor, AspectJExpressionPointcutAdvisor, AspectJPointcutAdvisor, DeclareParentsAdvisor, DefaultBeanFactoryPointcutAdvisor, DefaultIntroductionAdvisor, DefaultPointcutAdvisor, NameMatchMethodPointcutAdvisor, ReflectiveAspectJAdvisorFactory.SyntheticInstantiationAdvisor, RegexpMethodPointcutAdvisor, StaticMethodMatcherPointcutAdvisor

      public interface Advisor

  Base interface holding AOP advice (action to take at a joinpoint) and a filter determining the applicability of the advice (such as a pointcut). This interface is not for use by Spring users, but to allow for commonality in support for different types of advice.

  Spring AOP is based around around advice delivered via method interception, compliant with the AOP Alliance interception API. The Advisor interface allows support for different types of advice, such as before and after advice, which need not be implemented using interception.

  作者:
    Rod Johnson, Juergen Hoeller

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `static Advice` | `EMPTY_ADVICE` Common placeholder for an empty `Advice` to be returned from `getAdvice()` if no proper advice has been configured (yet).

  - ### 方法概要

    所有方法 实例方法 抽象方法
    限定符和类型 | 方法和说明
    --- | ---
    `Advice` | `getAdvice()` Return the advice part of this aspect.
    `boolean` | `isPerInstance()` Return whether this advice is associated with a particular instance (for example, creating a mixin) or shared with all instances of the advised class obtained from the same Spring bean factory.

- - ### 字段详细资料

    - #### EMPTY_ADVICE

          static final Advice EMPTY_ADVICE

      Common placeholder for an empty `Advice` to be returned from `getAdvice()` if no proper advice has been configured (yet).
      从以下版本开始:
        5.0

  - ### 方法详细资料

    - #### getAdvice

          Advice getAdvice()

      Return the advice part of this aspect. An advice may be an interceptor, a before advice, a throws advice, etc.
      返回:
        the advice that should apply if the pointcut matches
      另请参阅:
        `MethodInterceptor`, `BeforeAdvice`, `ThrowsAdvice`, `AfterReturningAdvice`

    - #### isPerInstance

          boolean isPerInstance()

      Return whether this advice is associated with a particular instance (for example, creating a mixin) or shared with all instances of the advised class obtained from the same Spring bean factory.

      Note that this method is not currently used by the framework. Typical Advisor implementations always return `true`. Use singleton/prototype bean definitions or appropriate programmatic proxy creation to ensure that Advisors have the correct lifecycle model.

      返回:
        whether this advice is associated with a particular target instance