java.lang.Object | ||
↳ | org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource | |
↳ | org.springframework.aop.target.LazyInitTargetSource |
TargetSource
that lazily accesses a
singleton bean from a BeanFactory
.
Useful when a proxy reference is needed on initialization but
the actual target object should not be initialized until first use.
When the target bean is defined in an
ApplicationContext
(or a
BeanFactory
that is eagerly pre-instantiating singleton beans)
it must be marked as "lazy-init" too, else it will be instantiated by said
ApplicationContext
(or BeanFactory
) on startup.
For example:
<bean id="serviceTarget" class="example.MyService" lazy-init="true"> ... </bean> <bean id="service" class="org.springframework.aop.framework.ProxyFactoryBean"> <property name="targetSource"> <bean class="org.springframework.aop.target.LazyInitTargetSource"> <property name="targetBeanName"><idref local="serviceTarget"/></property> </bean> </property> </bean>The "serviceTarget" bean will not get initialized until a method on the "service" proxy gets invoked.
Subclasses can extend this class and override the postProcessTargetObject(Object)
to
perform some additional processing with the target object when it is first loaded.
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Subclasses may override this method to perform additional processing on
the target object when it is first loaded.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
org.springframework.aop.TargetClassAware
| |||||||||||
From interface
org.springframework.aop.TargetSource
| |||||||||||
From interface
org.springframework.beans.factory.BeanFactoryAware
|
Subclasses may override this method to perform additional processing on the target object when it is first loaded.
targetObject | the target object that has just been instantiated (and configured) |
---|