类 AbstractAspectJAdvisorFactory
- 所有已实现的接口:
AspectJAdvisorFactory
- 直接已知子类:
ReflectiveAspectJAdvisorFactory
This class handles annotation parsing and validation functionality. It does not actually generate Framework AOP Advisors, which is deferred to subclasses.
- 从以下版本开始:
- 4.0
- 作者:
- Rod Johnson, Adrian Colyer, Juergen Hoeller, Harry Yang
-
嵌套类概要
嵌套类修饰符和类型类说明protected static classClass modeling an AspectJ annotation, exposing its type enumeration and pointcut String.private static classParameterNameDiscoverer implementation that analyzes the arg names specified at the AspectJ annotation level.protected static enumEnum for AspectJ annotation types. -
字段概要
字段修饰符和类型字段说明private static final Stringprivate static final Class<?>[]static final StringSystem property that instructs Spring to ignore ajc-compiled aspects for Spring AOP proxying, restoring traditional Spring behavior for scenarios where both weaving and AspectJ auto-proxying are enabled.protected final infra.logging.LoggerLogger available to subclasses.protected final infra.core.ParameterNameDiscovererprivate static final boolean -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明private static booleancompiledByAjc(Class<?> clazz) private static AbstractAspectJAdvisorFactory.AspectJAnnotationfindAnnotation(Method method, Class<? extends Annotation> annotationType) protected static AbstractAspectJAdvisorFactory.AspectJAnnotationfindAspectJAnnotationOnMethod(Method method) Find and return the first AspectJ annotation on the given method (there should only be one anyway...).booleanDetermine whether or not the given class is an aspect, as reported by AspectJ'sAjTypeSystem.voidIs the given class a valid AspectJ aspect class?从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 infra.aop.aspectj.annotation.AspectJAdvisorFactory
getAdvice, getAdvisor, getAdvisors
-
字段详细资料
-
ASPECTJ_ANNOTATION_CLASSES
-
AJC_MAGIC
- 另请参阅:
-
IGNORE_AJC_PROPERTY_NAME
System property that instructs Spring to ignore ajc-compiled aspects for Spring AOP proxying, restoring traditional Spring behavior for scenarios where both weaving and AspectJ auto-proxying are enabled.The default is "false". Consider switching this to "true" if you encounter double execution of your aspects in a given build setup. Note that we recommend restructuring your AspectJ configuration to avoid such double exposure of an AspectJ aspect to begin with.
- 从以下版本开始:
- 5.0
- 另请参阅:
-
shouldIgnoreAjcCompiledAspects
private static final boolean shouldIgnoreAjcCompiledAspects -
logger
protected final infra.logging.Logger loggerLogger available to subclasses. -
parameterNameDiscoverer
protected final infra.core.ParameterNameDiscoverer parameterNameDiscoverer
-
-
构造器详细资料
-
AbstractAspectJAdvisorFactory
public AbstractAspectJAdvisorFactory()
-
-
方法详细资料
-
isAspect
从接口复制的说明:AspectJAdvisorFactoryDetermine whether or not the given class is an aspect, as reported by AspectJ'sAjTypeSystem.Will simply return
falseif the supposed aspect is invalid (such as an extension of a concrete aspect class). Will return true for some aspects that Framework AOP cannot process, such as those with unsupported instantiation models. Use theAspectJAdvisorFactory.validate(java.lang.Class<?>)method to handle these cases if necessary.- 指定者:
isAspect在接口中AspectJAdvisorFactory- 参数:
clazz- the supposed annotation-style AspectJ class- 返回:
- whether or not this class is recognized by AspectJ as an aspect class
-
validate
从接口复制的说明:AspectJAdvisorFactoryIs 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...). -
findAnnotation
@Nullable private static AbstractAspectJAdvisorFactory.AspectJAnnotation findAnnotation(Method method, Class<? extends Annotation> annotationType) -
compiledByAjc
-