6.9.8 @PostConstruct和@PreDestroy
CommonAnnotationBeanPostProcessor不仅识别@Resource注解,还识别JSR-250生命周期的注解。在初始化回调和销毁回调中描述了,Spring 2.5引入的另一种替代方法来支持这些注解。如果CommonAnnotationBeanPostProcessor在Spring ApplicationContext中注册,那么在生命周期中的同一点承载了这些注解之一的方法就会被调用,就如同相应的Spring生命周期接口方法或显式声明的回调方法。在下面的示例中,缓存将在初始化时预先填充,并在销毁时清除。
public class CachingMovieLister { @PostConstruct public void populateMovieCache() { // populates the movie cache upon initialization... } @PreDestroy public void clearMovieCache() { // clears the movie cache upon destruction... } }
有关组合各种生命周期机制的效果的详细信息,请参阅“组合生命周期机制”一节。