Solon

问题:如何获取应用程序的停止事件?

</> markdown

需要对 《应用生命周期》 有所了解。

1、基于容器生命周期的 stop 接口获取事件

@Component
public class LifecycleBeanImpl implements LifecycleBean {
    @Override
    public void stop(){
        //容器停止时(一般也是应用程序停止时)
    }
}

2、基于事件订阅,v2.1.0 后支持

@Component
public class  AppStopEndEventListener implements EventListener<AppStopEndEvent> {
    @Override
    public void onEvent(AppStopEndEvent event) throws Throwable {
        //event.app(); //获取应用对象
    }
}