org.springframework.aop.aspectj.annotation

## 类 AbstractAspectJAdvisorFactory

- java.lang.Object
- - org.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory

- 所有已实现的接口:
    AspectJAdvisorFactory
  直接已知子类:
    ReflectiveAspectJAdvisorFactory

      public abstract class AbstractAspectJAdvisorFactory
      extends Object
      implements AspectJAdvisorFactory

  Abstract base class for factories that can create Spring AOP Advisors given AspectJ classes from classes honoring the AspectJ 5 annotation syntax.

  This class handles annotation parsing and validation functionality. It does not actually generate Spring AOP Advisors, which is deferred to subclasses.

  从以下版本开始:
    2.0
  作者:
    Rod Johnson, Adrian Colyer, Juergen Hoeller

- - ### 嵌套类概要

    嵌套类
    限定符和类型 | 类和说明
    --- | ---
    `protected static class` | `AbstractAspectJAdvisorFactory.AspectJAnnotation<A extends Annotation>` Class modelling an AspectJ annotation, exposing its type enumeration and pointcut String.
    `protected static class` | `AbstractAspectJAdvisorFactory.AspectJAnnotationType` Enum for AspectJ annotation types.

  - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `protected Log` | `logger` Logger available to subclasses
    `protected org.springframework.core.ParameterNameDiscoverer` | `parameterNameDiscoverer`

  - ### 构造器概要

    构造器
    构造器和说明
    `AbstractAspectJAdvisorFactory()`

  - ### 方法概要

    所有方法 静态方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `protected static AbstractAspectJAdvisorFactory.AspectJAnnotation<?>` | `findAspectJAnnotationOnMethod(Method method)` Find and return the first AspectJ annotation on the given method (there should only be one anyway...).
    `boolean` | `isAspect(Class<?> clazz)` 传入正在创建的Bean对象的class中是不是有@Aspect切面的注解信息
    `void` | `validate(Class<?> aspectClass)` Is the given class a valid AspectJ aspect class?

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### 从接口继承的方法 org.springframework.aop.aspectj.annotation.AspectJAdvisorFactory

      `getAdvice, getAdvisor, getAdvisors`

- - ### 字段详细资料

    - #### logger

          protected final Log logger

      Logger available to subclasses

    - #### parameterNameDiscoverer

          protected final org.springframework.core.ParameterNameDiscoverer parameterNameDiscoverer

  - ### 构造器详细资料

    - #### AbstractAspectJAdvisorFactory

          public AbstractAspectJAdvisorFactory()

  - ### 方法详细资料

    - #### isAspect

          public boolean isAspect(Class<?> clazz)

      传入正在创建的Bean对象的class中是不是有@Aspect切面的注解信息
      指定者:
        `isAspect` 在接口中 `AspectJAdvisorFactory`
      参数:
        `clazz` - the supposed annotation-style AspectJ class
      返回:
        whether or not this class is recognized by AspectJ as an aspect class

    - #### validate

          public void validate(Class<?> aspectClass)
                        throws AopConfigException

      从接口复制的说明: `AspectJAdvisorFactory`
      Is the given class a valid AspectJ aspect class?
      指定者:
        `validate` 在接口中 `AspectJAdvisorFactory`
      参数:
        `aspectClass` - the supposed AspectJ annotation-style class to validate
      抛出:
        `AopConfigException` - if the class is an invalid aspect (which can never be legal)
        `NotAnAtAspectException` - if the class is not an aspect at all (which may or may not be legal, depending on the context)

    - #### findAspectJAnnotationOnMethod

          @Nullable
          protected static AbstractAspectJAdvisorFactory.AspectJAnnotation<?> findAspectJAnnotationOnMethod(Method method)

      Find and return the first AspectJ annotation on the given method (there should only be one anyway...).