Core Spring AOP interfaces, built on AOP Alliance AOP interoperability interfaces.
Any AOP Alliance MethodInterceptor is usable in Spring.
Spring AOP also offers:
- Introduction support
- A Pointcut abstraction, supporting "static" pointcuts
(class and method-based) and "dynamic" pointcuts (also considering method arguments).
There are currently no AOP Alliance interfaces for pointcuts.
- A full range of advice types, including around, before, after returning and throws advice.
- Extensibility allowing arbitrary custom advice types to
be plugged in without modifying the core framework.
Spring AOP can be used programmatically or (preferably)
integrated with the Spring IoC container.
||Base interface holding AOP advice (action to take at a joinpoint)
and a filter determining the applicability of the advice (such as
||Common marker interface for after advice,
||After returning advice is invoked only on normal method return, not if an
exception is thrown.
||Common marker interface for before advice, such as
||Filter that restricts matching of a pointcut or introduction to
a given set of target classes.
||Subinterface of AOP Alliance Advice that allows additional interfaces
to be implemented by an Advice, and available via a proxy using that
||Superinterface for advisors that perform one or more AOP introductions.
||A specialized type of MethodMatcher that takes into account introductions when
||Interface supplying the information necessary to describe an introduction.
||Subinterface of AOP Alliance MethodInterceptor that allows additional interfaces
to be implemented by the interceptor, and available via a proxy using that
||Advice invoked before a method is invoked.
||Part of a
Pointcut: Checks whether the target method is eligible for advice.
||Core Spring pointcut abstraction.
||Superinterface for all Advisors that are driven by a pointcut.
||Extension of the AOP Alliance org.aopalliance.intercept.MethodInvocation
interface, allowing access to the proxy that the method invocation was made through.
||Marker for AOP proxy interfaces (in particular: introduction interfaces)
that explicitly intend to return the raw target object (which would normally
get replaced with the proxy object when returned from a method invocation).
||Marker interface implemented by all AOP proxies.
||Minimal interface for exposing the target class behind a proxy.
TargetSource is used to obtain the current "target" of
an AOP invocation, which will be invoked via reflection if no around
advice chooses to end the interceptor chain itself.
||Tag interface for throws advice.
||Exception that gets thrown when an AOP invocation failed
because of misconfiguration or unexpected runtime issues.