首页 > 编程 > Java > 正文

springboot关于容器启动事件总结

2019-11-26 08:28:38
字体:
来源:转载
供稿:网友

在springboot 容器启动时,我们需要在启动过程中做一些操作,比如启动容器后,执行某些代码。

spring 提供了监听器,我们可以方便的实现这些操作。

在容器启动开始时:

package com.neo.filter;import org.springframework.boot.context.event.ApplicationStartingEvent;import org.springframework.context.ApplicationListener;public class ApplicationStartingEventListener implements ApplicationListener<ApplicationStartingEvent> {  @Override  public void onApplicationEvent(ApplicationStartingEvent arg0) {    System.err.println("ApplicationStartingEventListener");  }}

在容器启动完成后执行操作:

package com.neo.filter;import org.springframework.boot.context.event.ApplicationStartedEvent;import org.springframework.context.ApplicationListener;import org.springframework.core.Ordered;public class ApplicationStartedEventListener implements ApplicationListener<ApplicationStartedEvent>,Ordered {  @Override  public void onApplicationEvent(ApplicationStartedEvent ev) {    System.out.println("ApplicationStartedEventListener1");  }  @Override  public int getOrder() {    return 1;  }}

如果需要有顺序执行,我们可以实现Ordered接口,只越小,越先执行。

package com;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import com.neo.filter.ApplicationStartedEventListener;import com.neo.filter.ApplicationStartedEventListener2;import com.neo.filter.ApplicationStartingEventListener;@SpringBootApplicationpublic class DemoApplication {  public static void main(String[] args) {    SpringApplication app=new SpringApplication(DemoApplication.class);    app.addListeners(new ApplicationStartedEventListener());    app.addListeners(new ApplicationStartingEventListener());    app.addListeners(new ApplicationStartedEventListener2());    app.run(args);  }}

以上就是关于springboot容器启动事件的相关知识点以及实例代码,感谢大家对武林网的支持。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表