java.lang.Object | |
↳ | org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor |
Known Direct Subclasses |
BeanPostProcessor
implementation
that invokes annotated init and destroy methods. Allows for an annotation
alternative to Spring's InitializingBean
and DisposableBean
callback interfaces.
The actual annotation types that this post-processor checks for can be
configured through the "initAnnotationType"
and "destroyAnnotationType"
properties.
Any custom annotation can be used, since there are no required annotation
attributes.
Init and destroy annotations may be applied to methods of any visibility: public, package-protected, protected, or private. Multiple such methods may be annotated, but it is recommended to only annotate one single init method and destroy method, respectively.
Spring's CommonAnnotationBeanPostProcessor
supports the JSR-250 javax.annotation.PostConstruct and javax.annotation.PreDestroy
annotations out of the box, as init annotation and destroy annotation, respectively.
Furthermore, it also supports the javax.annotation.Resource annotation
for annotation-driven injection of named beans.
[Expand]
Inherited Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From interface
org.springframework.core.Ordered
|
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
logger |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Return the order value of this object, with a
higher value meaning greater in terms of sorting.
| |||||||||||
Apply this BeanPostProcessor to the given new bean instance after any bean
initialization callbacks (like InitializingBean's
afterPropertiesSet
or a custom init-method). | |||||||||||
Apply this BeanPostProcessor to the given bean instance before
its destruction.
| |||||||||||
Apply this BeanPostProcessor to the given new bean instance before any bean
initialization callbacks (like InitializingBean's
afterPropertiesSet
or a custom init-method). | |||||||||||
Specify the destroy annotation to check for, indicating destruction
methods to call when the context is shutting down.
| |||||||||||
Specify the init annotation to check for, indicating initialization
methods to call after configuration of a bean.
| |||||||||||
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
org.springframework.beans.factory.config.BeanPostProcessor
| |||||||||||
From interface
org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor
| |||||||||||
From interface
org.springframework.beans.factory.support.MergedBeanDefinitionPostProcessor
| |||||||||||
From interface
org.springframework.core.Ordered
|
Return the order value of this object, with a higher value meaning greater in terms of sorting.
Normally starting with 0, with Integer.MAX_VALUE
indicating the greatest value. Same order values will result
in arbitrary positions for the affected objects.
Higher values can be interpreted as lower priority. As a consequence, the object with the lowest value has highest priority (somewhat analogous to Servlet "load-on-startup" values).
Apply this BeanPostProcessor to the given new bean instance after any bean
initialization callbacks (like InitializingBean's afterPropertiesSet
or a custom init-method). The bean will already be populated with property values.
The returned bean instance may be a wrapper around the original.
In case of a FactoryBean, this callback will be invoked for both the FactoryBean
instance and the objects created by the FactoryBean (as of Spring 2.0). The
post-processor can decide whether to apply to either the FactoryBean or created
objects or both through corresponding bean instanceof FactoryBean
checks.
This callback will also be invoked after a short-circuiting triggered by a
postProcessBeforeInstantiation(Class>, String)
method,
in contrast to all other BeanPostProcessor callbacks.
bean | the new bean instance |
---|---|
beanName | the name of the bean |
null
, no subsequent BeanPostProcessors will be invokedBeansException |
---|
Apply this BeanPostProcessor to the given bean instance before its destruction. Can invoke custom destruction callbacks.
Like DisposableBean's destroy
and a custom destroy method,
this callback just applies to singleton beans in the factory (including
inner beans).
bean | the bean instance to be destroyed |
---|---|
beanName | the name of the bean |
BeansException |
---|
Apply this BeanPostProcessor to the given new bean instance before any bean
initialization callbacks (like InitializingBean's afterPropertiesSet
or a custom init-method). The bean will already be populated with property values.
The returned bean instance may be a wrapper around the original.
bean | the new bean instance |
---|---|
beanName | the name of the bean |
null
, no subsequent BeanPostProcessors will be invokedBeansException |
---|
Specify the destroy annotation to check for, indicating destruction methods to call when the context is shutting down.
Any custom annotation can be used, since there are no required annotation attributes. There is no default, although a typical choice is the JSR-250 javax.annotation.PreDestroy annotation.
Specify the init annotation to check for, indicating initialization methods to call after configuration of a bean.
Any custom annotation can be used, since there are no required annotation attributes. There is no default, although a typical choice is the JSR-250 javax.annotation.PostConstruct annotation.