最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring boot之SpringApplication 事件監(jiān)聽

 更新時間:2019年03月14日 08:27:52   作者:posuoren  
這篇文章主要介紹了spring boot之SpringApplication 事件監(jiān)聽,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

spring application listener

在 spring 框架中,有多種事件, 這些時間會在不同的運行時刻發(fā)布,來通知監(jiān)聽者。本文僅僅介紹 SpringApplicationEvent 的事件的監(jiān)聽。

事件類型

EventType 發(fā)布時間
ApplicationContextInitializedEvent 在 SpringApplication正在啟動, ApplicationContext 已經(jīng)準備好了,ApplicationContextInitializers 被調(diào)用, bean definitions 被加載之前
ApplicationStartingEvent 在一次啟動之前發(fā)布
ApplicationEnvironmentPreparedEvent 在 Environment 準備好之后,會有 context 去使用這一 Environment, 會在 context 創(chuàng)建之前發(fā)出
ApplicationPreparedEvent 會在 bean definitions 加載之后,refresh 之前發(fā)布
ApplicationStartedEvent context 更新之后,任何應(yīng)用或命令行啟動調(diào)用之前
ApplicationReadyEvent 任何應(yīng)用或命令行啟動調(diào)用之后發(fā)布,說明應(yīng)用已經(jīng)可以被請求了
ApplicationFailedEvent 啟動發(fā)生有異常時發(fā)步

如何監(jiān)聽

監(jiān)聽器需要使用 org.springframework.context.ApplicationListener 這個接口的實例, 其聲明如下:

@FunctionalInterface
public interface ApplicationListener<E extends ApplicationEvent> extends EventListener {
  /**
  * Handle an application event. * @param event the event to respond to
  */ 
 void onApplicationEvent(E event);
}

需要使用 SpringApplication.addListeners(…​) 或 SpringApplicationBuilder.listeners(…​) 來添加監(jiān)聽器。也可以在 META-INF/spring.factories 文件中配置:org.springframework.context.ApplicationListener=com.example.project.MyListener。

例子:

public class StartingEventListener implements ApplicationListener<ApplicationStartingEvent> {
 @Override
 public void onApplicationEvent(ApplicationStartingEvent applicationStartingEvent) {
  System.out.println("called own starting listener");

  System.out.println(applicationStartingEvent.getClass());
 }
}

@SpringBootApplication
public class DemoApplication {
 public static void main(String[] args){
  SpringApplication application = new SpringApplication(DemoApplication.class);
  application.addListeners(new StartingEventListener());
  application.run(args);
 }
}

終端運行 jar 包:

$ java -jar build/libs/springlisteners-0.0.1-SNAPSHOT.jar
called own starting listener
class org.springframework.boot.context.event.ApplicationStartingEvent

 .  ____     _      __ _ _
 /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/ ___)| |_)| | | | | || (_| | ) ) ) )
 ' |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::    (v2.1.3.RELEASE)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

萨迦县| 阜阳市| 武汉市| 改则县| 兰考县| 靖西县| 洪雅县| 彭泽县| 谢通门县| 永德县| 黎川县| 石阡县| 忻州市| 尉氏县| 牟定县| 疏附县| 山阴县| 嫩江县| 沂水县| 灵台县| 凤阳县| 湘潭市| 蕉岭县| 江口县| 建水县| 榆林市| 南投县| 娱乐| 满城县| 太仆寺旗| 唐河县| 武功县| 朝阳市| 大港区| 中西区| 互助| 桃园县| 蓝田县| 扶绥县| 庆云县| 泰宁县|