| 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.framework | Package containing Spring's basic AOP infrastructure, compliant with the
 AOP Alliance interfaces. | 
| org.springframework.aop.target | |
| org.springframework.aop.target.dynamic | 
| Modifier and Type | Interface and Description | 
|---|---|
| interface  | TargetSourceA  TargetSourceis 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. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AspectJProxyFactoryAspectJ-based proxy factory, allowing for programmatic building
 of proxies which include AspectJ aspects (code style as well
 Java 5 annotation style). | 
| Modifier and Type | Interface and Description | 
|---|---|
| interface  | AdvisedInterface to be implemented by classes that hold the configuration
 of a factory of AOP proxies. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AdvisedSupportBase class for AOP proxy configuration managers. | 
| class  | ProxyCreatorSupportBase class for proxy factories. | 
| class  | ProxyFactoryFactory for AOP proxies for programmatic use, rather than via declarative
 setup in a bean factory. | 
| class  | ProxyFactoryBeanFactoryBeanimplementation that builds an
 AOP proxy based on beans in SpringBeanFactory. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AbstractBeanFactoryBasedTargetSourceBase class for  TargetSourceimplementations
 that are based on a SpringBeanFactory,
 delegating to Spring-managed bean instances. | 
| class  | AbstractLazyCreationTargetSourceTargetSourceimplementation that will
 lazily create a user-managed object. | 
| class  | AbstractPoolingTargetSourceAbstract base class for pooling  TargetSourceimplementations which maintain a pool of target instances, acquiring and
 releasing a target object from the pool for each method invocation. | 
| class  | AbstractPrototypeBasedTargetSourceBase class for dynamic  TargetSourceimplementations
 that create new prototype bean instances to support a pooling or
 new-instance-per-invocation strategy. | 
| class  | CommonsPool2TargetSourceTargetSourceimplementation that holds
 objects in a configurable Apache Commons2 Pool. | 
| class  | EmptyTargetSourceCanonical  TargetSourcewhen there is no target
 (or just the target class known), and behavior is supplied
 by interfaces and advisors only. | 
| class  | HotSwappableTargetSourceTargetSourceimplementation that
 caches a local target object, but allows the target to be swapped
 while the application is running. | 
| class  | LazyInitTargetSourceTargetSourcethat lazily accesses a
 singleton bean from aBeanFactory. | 
| class  | PrototypeTargetSourceTargetSourceimplementation that
 creates a new instance of the target bean for each request,
 destroying each instance on release (after each request). | 
| class  | SimpleBeanTargetSourceSimple  TargetSourceimplementation,
 freshly obtaining the specified target bean from its containing
 SpringBeanFactory. | 
| class  | SingletonTargetSourceImplementation of the  TargetSourceinterface
 that holds a given object. | 
| class  | ThreadLocalTargetSourceAlternative to an object pool. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AbstractRefreshableTargetSourceAbstract  TargetSourceimplementation that
 wraps a refreshable target object. | 
| class  | BeanFactoryRefreshableTargetSourceRefreshable TargetSource that fetches fresh target beans from a BeanFactory. |