LifeCycle定義Spring容器對象的生命周期,任何spring管理對象都可以實現該接口。
當ApplicationContext本身接收啟動和停止信號(例如在運行時停止/重啟場景)時,spring容器將在容器上下文中找出所有實現了LifeCycle及其子類接口的類,并一一調用它們實現的類。spring是通過委托給生命周期處理器LifecycleProcessor來實現這一點的。
LifeCycle定義了三個方法,任何Bean實現了LifeCycle方法,當ApplicationContext收到start,stop or restart等信號的時候,就會調用對應的方法。所以在應用程序中可以通過實現LifeCycle接口獲得容器生命周期的回調,實現業務擴展。LifeCycle定義如下:
```lang=Java
public interface Lifecycle {
// 啟動
void start();
// 停止
void stop();
// 是否運行
boolean isRunning();
}
```