# Package org.springframework.aop.aspectj

@NonNullApi @NonNullFields package org.springframework.aop.aspectj
AspectJ integration package. Includes Spring AOP advice implementations for AspectJ 5 annotation-style methods, and an AspectJExpressionPointcut: a Spring AOP Pointcut implementation that allows use of the AspectJ pointcut expression language with the Spring AOP runtime framework.

Note that use of this package does not require the use of the `ajc` compiler or AspectJ load-time weaver. It is intended to enable the use of a valuable subset of AspectJ functionality, with consistent semantics, with the proxy-based Spring AOP framework.

Related Packages
Package
Description
org.springframework.aop
Core Spring AOP interfaces, built on AOP Alliance AOP interoperability interfaces.
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.
Class
Description
AbstractAspectJAdvice
Base class for AOP Alliance `Advice` classes wrapping an AspectJ aspect or an AspectJ-annotated advice method.
AspectInstanceFactory
Interface implemented to provide an instance of an AspectJ aspect.
AspectJAdviceParameterNameDiscoverer
`ParameterNameDiscoverer` implementation that tries to deduce parameter names for an advice method from the pointcut expression, returning, and throwing clauses.
AspectJAdviceParameterNameDiscoverer.AmbiguousBindingException
Thrown in response to an ambiguous binding being detected when trying to resolve a method's parameter names.
AspectJAfterAdvice
Spring AOP advice wrapping an AspectJ after advice method.
AspectJAfterReturningAdvice
Spring AOP advice wrapping an AspectJ after-returning advice method.
AspectJAfterThrowingAdvice
Spring AOP advice wrapping an AspectJ after-throwing advice method.
AspectJAopUtils
Utility methods for dealing with AspectJ advisors.
AspectJAroundAdvice
Spring AOP around advice (MethodInterceptor) that wraps an AspectJ advice method.
AspectJExpressionPointcut
Spring `Pointcut` implementation that uses the AspectJ weaver to evaluate a pointcut expression.
AspectJExpressionPointcutAdvisor
Spring AOP Advisor that can be used for any AspectJ pointcut expression.
AspectJMethodBeforeAdvice
Spring AOP advice that wraps an AspectJ before method.
AspectJPointcutAdvisor
`AspectJPointcutAdvisor` adapts an `AbstractAspectJAdvice` to the `PointcutAdvisor` interface.
AspectJPrecedenceInformation
Interface to be implemented by types that can supply the information needed to sort advice/advisors by AspectJ's precedence rules.
AspectJProxyUtils
Utility methods for working with AspectJ proxies.
AspectJWeaverMessageHandler
Implementation of AspectJ's `IMessageHandler` interface that routes AspectJ weaving messages through the same logging system as the regular Spring messages.
DeclareParentsAdvisor
Introduction advisor delegating to the given object.
InstantiationModelAwarePointcutAdvisor
Interface to be implemented by Spring AOP Advisors wrapping AspectJ aspects that may have a lazy initialization strategy.
MethodInvocationProceedingJoinPoint
An implementation of the AspectJ `ProceedingJoinPoint` interface wrapping an AOP Alliance `MethodInvocation`.
ShadowMatchUtils
Internal `ShadowMatch` utilities.
SimpleAspectInstanceFactory
Implementation of `AspectInstanceFactory` that creates a new instance of the specified aspect class for every `SimpleAspectInstanceFactory.getAspectInstance()` call.
SingletonAspectInstanceFactory
Implementation of `AspectInstanceFactory` that is backed by a specified singleton object, returning the same instance for every `SingletonAspectInstanceFactory.getAspectInstance()` call.
TypePatternClassFilter
Spring AOP `ClassFilter` implementation using AspectJ type matching.