对Spring Bean 生命周期方法的总结
@Bean(initMethod = "initMethod", destroyMethod = "destroyMethod")
public BeanTest beanTest() {
return new BeanTest();
}
public class BeanTest implements InitializingBean, DisposableBean, BeanPostProcessor, ApplicationContextAware {
public BeanTest() {
System.out.println("1.constructor");
}
@PostConstruct
public void postConstruct() {
System.out.println("2.PostConstruct");
}
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("3.InitializingBean:afterPropertiesSet");
}
public void initMethod() {
System.out.println("4.initMethod");
}
@PreDestroy
public void annDestroy() {
System.out.println("1.PreDestroy");
}
@Override
public void destroy() throws Exception {
System.out.println("2.DisposableBean:destroy");
}
public void destroyMethod() {
System.out.println("3.destroyMethod");
}
/*@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
System.out.println("postProcessBeforeInitialization:" + beanName + " " + bean);
return bean;
}
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
System.out.println("postProcessAfterInitialization:" + beanName + " " + bean);
return bean;
}*/
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
AnnotationConfigServletWebServerApplicationContext a = (AnnotationConfigServletWebServerApplicationContext) applicationContext;
DefaultListableBeanFactory beanFactory = (DefaultListableBeanFactory) a.getBeanFactory();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
beanFactory.removeBeanDefinition("beanTest");
}).start();
}
}
初始化:
- constructor
- PostConstruct
- InitializingBean:afterPropertiesSet
- initMethod
销毁:
- PreDestroy
- DisposableBean:destroy
- destroyMethod
6 条评论
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合 的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合 的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
选材新颖独特,通过细节描写赋予主题鲜活生命力。
文章深入浅出,既有深度思考,又不乏广度覆盖,令人叹为观止。
作者的情感表达细腻入微,让人在阅读中找到了心灵的慰藉。