- SmartInitializingSingleton 接口
//仅适用于单例对象
public interface SmartInitializingSingleton {
void afterSingletonsInstantiated();
}
- 作用
该接口在bean实例化完成,包括依赖注入完成,BeadPostProcess,InitializingBean,initMethod等等全部完成后,执行;
可以理解为bean的收尾操作;
- 使用
单例bean实现该接口,实现afterPropertiesSet方法,抒写代码逻辑;
- 源码如下
AbstractApplicationContext.refresh(){
//省略...
// Instantiate all remaining (non-lazy-init) singletons.
finishBeanFactoryInitialization(beanFactory);
//省略...
}