1.美图
2.Spring 容器简介
参考:Spring 容器简介
3.SmartLifeCycle简介
SmartLifeCycle是一个接口,具体继承关系如下:
如上图所示,在继承了Lifecycle和Phased两个接口后,SmartLifecycle一共定义了六个方法,为了便于后面的源码分析,先做个简介:
方法 | 作用 |
---|---|
start() | bean初始化完毕后,该方法会被执行 |
stop() | 容器关闭后:spring容器发现当前对象实现了SmartLifecycle,就调用stop(Runnable),如果只是实现了Lifecycle,就调用stop() |
isRunning() | 当前状态 |
getPhase() | 返回值决定start方法在众多Lifecycle实现类中的执行顺序( |