# Package org.springframework.aop.target

This package contains implementations of the org.springframework.aop.TargetSource interface.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  PoolingConfig | Config interface for a pooling target source.
  ThreadLocalTargetSourceStats | Statistics for a ThreadLocal TargetSource.

- Class Summary
  Class | Description
  --- | ---
  AbstractBeanFactoryBasedTargetSource | Base class for `TargetSource` implementations that are based on a Spring `BeanFactory`, delegating to Spring-managed bean instances.
  AbstractLazyCreationTargetSource | `TargetSource` implementation that will lazily create a user-managed object.
  AbstractPoolingTargetSource | Abstract base class for pooling `TargetSource` implementations which maintain a pool of target instances, acquiring and releasing a target object from the pool for each method invocation.
  AbstractPrototypeBasedTargetSource | Base class for dynamic `TargetSource` implementations that create new prototype bean instances to support a pooling or new-instance-per-invocation strategy.
  CommonsPoolTargetSource | `TargetSource` implementation that holds objects in a configurable Apache Commons Pool.
  EmptyTargetSource | Canonical `TargetSource` when there is no target (or just the target class known), and behavior is supplied by interfaces and advisors only.
  HotSwappableTargetSource | `TargetSource` implementation that caches a local target object, but allows the target to be swapped while the application is running.
  LazyInitTargetSource | `TargetSource` that lazily accesses a singleton bean from a `BeanFactory`.
  PrototypeTargetSource | `TargetSource` implementation that creates a new instance of the target bean for each request, destroying each instance on release (after each request).
  SimpleBeanTargetSource | Simple `TargetSource` implementation, freshly obtaining the specified target bean from its containing Spring `BeanFactory`.
  SingletonTargetSource | Implementation of the `TargetSource` interface that holds a given object.
  ThreadLocalTargetSource | Alternative to an object pool.

## Package org.springframework.aop.target Description

This package contains implementations of the org.springframework.aop.TargetSource interface.
The simplest implementation is the SingletonTargetSource, used by default in the AOP framework to wrap a single target instance. This is normally appropriate.
Other provided implementations include pooling implementations, that provide a target from a pool for each request, ensuring a single threaded programming model; and a "prototype" implementation, that uses a new target instance for each invocation.