| Package | Description | 
|---|---|
| org.springframework.aop | Core Spring AOP interfaces, built on AOP Alliance AOP interoperability interfaces. | 
| org.springframework.aop.aspectj | AspectJ integration package. | 
| org.springframework.aop.aspectj.annotation | Classes enabling AspectJ 5 @Annotated classes to be used in Spring AOP. | 
| org.springframework.aop.aspectj.autoproxy | Base classes enabling auto-proxying based on AspectJ. | 
| org.springframework.aop.framework | Package containing Spring's basic AOP infrastructure, compliant with the
 AOP Alliance interfaces. | 
| org.springframework.aop.framework.adapter | SPI package allowing Spring AOP framework to handle arbitrary advice types. | 
| org.springframework.aop.framework.autoproxy | Bean post-processors for use in ApplicationContexts to simplify AOP usage
 by automatically creating AOP proxies without the need to use a ProxyFactoryBean. | 
| org.springframework.aop.interceptor | Provides miscellaneous interceptor implementations. | 
| org.springframework.aop.support | Convenience classes for using Spring's AOP API. | 
| Modifier and Type | Interface and Description | 
|---|---|
| interface  | IntroductionAdvisorSuperinterface for advisors that perform one or more AOP introductions. | 
| interface  | PointcutAdvisorSuperinterface for all Advisors that are driven by a pointcut. | 
| Modifier and Type | Interface and Description | 
|---|---|
| interface  | InstantiationModelAwarePointcutAdvisorInterface to be implemented by Spring AOP Advisors wrapping AspectJ
 aspects that may have a lazy initialization strategy. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AspectJExpressionPointcutAdvisorSpring AOP Advisor that can be used for any AspectJ pointcut expression. | 
| class  | AspectJPointcutAdvisorAspectJPointcutAdvisor that adapts an  AbstractAspectJAdviceto thePointcutAdvisorinterface. | 
| class  | DeclareParentsAdvisorIntroduction advisor delegating to the given object. | 
| Modifier and Type | Method and Description | 
|---|---|
| static AspectJPrecedenceInformation | AspectJAopUtils. getAspectJPrecedenceInformationFor(Advisor anAdvisor)Return the AspectJPrecedenceInformation provided by this advisor or its advice. | 
| static boolean | AspectJAopUtils. isAfterAdvice(Advisor anAdvisor)Return  trueif the advisor is a form of after advice. | 
| static boolean | AspectJAopUtils. isBeforeAdvice(Advisor anAdvisor)Return  trueif the advisor is a form of before advice. | 
| Modifier and Type | Method and Description | 
|---|---|
| static boolean | AspectJProxyUtils. makeAdvisorChainAspectJCapableIfNecessary(List<Advisor> advisors)Add special advisors if necessary to work with a proxy chain that contains AspectJ advisors:
 concretely,  ExposeInvocationInterceptorat the beginning of the list. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | ReflectiveAspectJAdvisorFactory.SyntheticInstantiationAdvisorSynthetic advisor that instantiates the aspect. | 
| Modifier and Type | Method and Description | 
|---|---|
| Advisor | AspectJAdvisorFactory. getAdvisor(Method candidateAdviceMethod,
          MetadataAwareAspectInstanceFactory aspectInstanceFactory,
          int declarationOrder,
          String aspectName)Build a Spring AOP Advisor for the given AspectJ advice method. | 
| Advisor | ReflectiveAspectJAdvisorFactory. getAdvisor(Method candidateAdviceMethod,
          MetadataAwareAspectInstanceFactory aspectInstanceFactory,
          int declarationOrderInAspect,
          String aspectName) | 
| Modifier and Type | Method and Description | 
|---|---|
| List<Advisor> | BeanFactoryAspectJAdvisorsBuilder. buildAspectJAdvisors()Look for AspectJ-annotated aspect beans in the current bean factory,
 and return to a list of Spring AOP Advisors representing them. | 
| protected List<Advisor> | AnnotationAwareAspectJAutoProxyCreator. findCandidateAdvisors() | 
| List<Advisor> | AspectJAdvisorFactory. getAdvisors(MetadataAwareAspectInstanceFactory aspectInstanceFactory)Build Spring AOP Advisors for all annotated At-AspectJ methods
 on the specified aspect instance. | 
| List<Advisor> | ReflectiveAspectJAdvisorFactory. getAdvisors(MetadataAwareAspectInstanceFactory aspectInstanceFactory) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected List<Advisor> | AspectJAwareAdvisorAutoProxyCreator. sortAdvisors(List<Advisor> advisors)Sort the rest by AspectJ precedence. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | AspectJAwareAdvisorAutoProxyCreator. extendAdvisors(List<Advisor> candidateAdvisors)Adds an  ExposeInvocationInterceptorto the beginning of the advice chain. | 
| protected List<Advisor> | AspectJAwareAdvisorAutoProxyCreator. sortAdvisors(List<Advisor> advisors)Sort the rest by AspectJ precedence. | 
| Modifier and Type | Field and Description | 
|---|---|
| protected Advisor | AbstractAdvisingBeanPostProcessor. advisor | 
| Modifier and Type | Method and Description | 
|---|---|
| Advisor[] | Advised. getAdvisors()Return the advisors applying to this proxy. | 
| Advisor[] | AdvisedSupport. getAdvisors() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected List<Advisor> | AdvisedSupport. getAdvisorsInternal() | 
| Modifier and Type | Method and Description | 
|---|---|
| void | Advised. addAdvisor(Advisor advisor)Add an advisor at the end of the advisor chain. | 
| void | AdvisedSupport. addAdvisor(Advisor advisor) | 
| void | Advised. addAdvisor(int pos,
          Advisor advisor)Add an Advisor at the specified position in the chain. | 
| void | AdvisedSupport. addAdvisor(int pos,
          Advisor advisor) | 
| void | AdvisedSupport. addAdvisors(Advisor... advisors)Add all of the given advisors to this proxy configuration. | 
| int | Advised. indexOf(Advisor advisor)Return the index (from 0) of the given advisor,
 or -1 if no such advisor applies to this proxy. | 
| int | AdvisedSupport. indexOf(Advisor advisor) | 
| boolean | Advised. removeAdvisor(Advisor advisor)Remove the given advisor. | 
| boolean | AdvisedSupport. removeAdvisor(Advisor advisor) | 
| boolean | Advised. replaceAdvisor(Advisor a,
              Advisor b)Replace the given advisor. | 
| boolean | AdvisedSupport. replaceAdvisor(Advisor a,
              Advisor b) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | AdvisedSupport. addAdvisors(Collection<Advisor> advisors)Add all of the given advisors to this proxy configuration. | 
| protected void | AdvisedSupport. copyConfigurationFrom(AdvisedSupport other,
                     TargetSource targetSource,
                     List<Advisor> advisors)Copy the AOP configuration from the given AdvisedSupport object,
 but allow substitution of a fresh TargetSource and a given interceptor chain. | 
| Modifier and Type | Method and Description | 
|---|---|
| Advisor | AdvisorAdapterRegistry. wrap(Object advice)Return an  Advisorwrapping the given advice. | 
| Advisor | DefaultAdvisorAdapterRegistry. wrap(Object adviceObject) | 
| Modifier and Type | Method and Description | 
|---|---|
| MethodInterceptor | AdvisorAdapter. getInterceptor(Advisor advisor)Return an AOP Alliance MethodInterceptor exposing the behavior of
 the given advice to an interception-based AOP framework. | 
| MethodInterceptor[] | AdvisorAdapterRegistry. getInterceptors(Advisor advisor)Return an array of AOP Alliance MethodInterceptors to allow use of the
 given Advisor in an interception-based framework. | 
| MethodInterceptor[] | DefaultAdvisorAdapterRegistry. getInterceptors(Advisor advisor) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected Advisor[] | AbstractAutoProxyCreator. buildAdvisors(String beanName,
             Object[] specificInterceptors)Determine the advisors for the given bean, including the specific interceptors
 as well as the common interceptor, all adapted to the Advisor interface. | 
| Modifier and Type | Method and Description | 
|---|---|
| List<Advisor> | BeanFactoryAdvisorRetrievalHelper. findAdvisorBeans()Find all eligible Advisor beans in the current bean factory,
 ignoring FactoryBeans and excluding beans that are currently in creation. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. findAdvisorsThatCanApply(List<Advisor> candidateAdvisors,
                        Class<?> beanClass,
                        String beanName)Search the given candidate Advisors to find all Advisors that
 can apply to the specified bean. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. findCandidateAdvisors()Find all candidate Advisors to use in auto-proxying. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. findEligibleAdvisors(Class<?> beanClass,
                    String beanName)Find all eligible Advisors for auto-proxying this class. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. sortAdvisors(List<Advisor> advisors)Sort advisors based on ordering. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | AbstractAdvisorAutoProxyCreator. extendAdvisors(List<Advisor> candidateAdvisors)Extension hook that subclasses can override to register additional Advisors,
 given the sorted Advisors obtained to date. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. findAdvisorsThatCanApply(List<Advisor> candidateAdvisors,
                        Class<?> beanClass,
                        String beanName)Search the given candidate Advisors to find all Advisors that
 can apply to the specified bean. | 
| protected List<Advisor> | AbstractAdvisorAutoProxyCreator. sortAdvisors(List<Advisor> advisors)Sort advisors based on ordering. | 
| Modifier and Type | Field and Description | 
|---|---|
| static Advisor | ExposeInvocationInterceptor. ADVISORSingleton advisor for this class. | 
| Modifier and Type | Method and Description | 
|---|---|
| static Advisor | ExposeBeanNameAdvisors. 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 Spring IoC concept. | 
| static Advisor | ExposeBeanNameAdvisors. createAdvisorWithoutIntroduction(String beanName)Create a new advisor that will expose the given bean name,
 with no introduction. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AbstractBeanFactoryPointcutAdvisorAbstract BeanFactory-based PointcutAdvisor that allows for any Advice
 to be configured as reference to an Advice bean in a BeanFactory. | 
| class  | AbstractGenericPointcutAdvisorAbstract generic  PointcutAdvisorthat allows for anyAdviceto be configured. | 
| class  | AbstractPointcutAdvisorAbstract base class for  PointcutAdvisorimplementations. | 
| class  | DefaultBeanFactoryPointcutAdvisorConcrete BeanFactory-based PointcutAdvisor that allows for any Advice
 to be configured as reference to an Advice bean in the BeanFactory,
 as well as the Pointcut to be configured through a bean property. | 
| class  | DefaultIntroductionAdvisorSimple  IntroductionAdvisorimplementation
 that by default applies to any class. | 
| class  | DefaultPointcutAdvisorConvenient Pointcut-driven Advisor implementation. | 
| class  | NameMatchMethodPointcutAdvisorConvenient class for name-match method pointcuts that hold an Advice,
 making them an Advisor. | 
| class  | RegexpMethodPointcutAdvisorConvenient class for regexp method pointcuts that hold an Advice,
 making them an  Advisor. | 
| class  | StaticMethodMatcherPointcutAdvisorConvenient base class for Advisors that are also static pointcuts. | 
| Modifier and Type | Method and Description | 
|---|---|
| static List<Advisor> | AopUtils. findAdvisorsThatCanApply(List<Advisor> candidateAdvisors,
                        Class<?> clazz)Determine the sublist of the  candidateAdvisorslist
 that is applicable to the given class. | 
| Modifier and Type | Method and Description | 
|---|---|
| static boolean | AopUtils. canApply(Advisor advisor,
        Class<?> targetClass)Can the given advisor apply at all on the given class?
 This is an important test as it can be used to optimize
 out a advisor for a class. | 
| static boolean | AopUtils. canApply(Advisor advisor,
        Class<?> targetClass,
        boolean hasIntroductions)Can the given advisor apply at all on the given class? | 
| Modifier and Type | Method and Description | 
|---|---|
| static List<Advisor> | AopUtils. findAdvisorsThatCanApply(List<Advisor> candidateAdvisors,
                        Class<?> clazz)Determine the sublist of the  candidateAdvisorslist
 that is applicable to the given class. |