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

Spring ApplicationListener的使用詳解

 更新時(shí)間:2020年06月11日 08:31:46   作者:happy9527  
這篇文章主要介紹了Spring ApplicationListener的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

介紹

Spring ApplicationListener 是Spring事件機(jī)制的一部分,與ApplicationEvent抽象類結(jié)合完成ApplicationContext的事件通知機(jī)制.

ContextRefreshedEvent事件監(jiān)聽

以Spring的內(nèi)置事件ContextRefreshedEvent為例,當(dāng)ApplicationContext被初始化或刷新時(shí),會(huì)觸發(fā)ContextRefreshedEvent事件.如下代碼示例:

@Component
public class LearnListener implements ApplicationListener<ContextRefreshedEvent> {
  @Override
  public void onApplicationEvent(ContextRefreshedEvent event) {
   //獲取所有的bean
   String[] definitionNames = event.getApplicationContext().getBeanDefinitionNames();
   for (String name : definitionNames) {
     //打印名稱
     System.out.println("name = " + name);
   }
  }
}

自定義事件

代碼

//繼承ApplicationEvent 抽象類就可以自定義事件模型
public class MyEvent extends ApplicationEvent {
 
  private Long id;
  private String message;
  public MyEvent(Object source) {
    super(source);
  }

  public MyEvent(Object source, Long id, String message) {
    super(source);
    this.id = id;
    this.message = message;
  }
  //get set 方法省略
}

//實(shí)現(xiàn)ApplicationListener接口
  @Component
public class MyListener implements ApplicationListener<MyEvent> {
  @Override
  public void onApplicationEvent(MyEvent event) {
    System.out.println("監(jiān)聽到事件: "+event.getId()+"\t"+event.getMessage());
  }
}

測(cè)試

@SpringBootTest
@RunWith(SpringRunner.class)
public class ListenerTest {
  @Autowired
  private ApplicationContext applicationContext;

  @Test
  public void testListenner() {
    MyEvent myEvent = new MyEvent("myEvent", 9527L, "十二點(diǎn)了 該吃飯了~");
    applicationContext.publishEvent(myEvent);
   // System.out.println("發(fā)送結(jié)束");
  }
}

結(jié)果

到此這篇關(guān)于Spring ApplicationListener的使用詳解的文章就介紹到這了,更多相關(guān)Spring ApplicationListener 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在Spring-Boot中如何使用@Value注解注入集合類

    在Spring-Boot中如何使用@Value注解注入集合類

    這篇文章主要介紹了在Spring-Boot中如何使用@Value注解注入集合類的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Spring中自動(dòng)裝配的4種方式

    Spring中自動(dòng)裝配的4種方式

    今天小編就為大家分享一篇關(guān)于Spring中自動(dòng)裝配的4種方式,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • java 中鎖的性能提高辦法

    java 中鎖的性能提高辦法

    這篇文章主要介紹了java 中鎖的性能提高辦法的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Java自動(dòng)釋放鎖的三種實(shí)現(xiàn)方案

    Java自動(dòng)釋放鎖的三種實(shí)現(xiàn)方案

    在筆者面試過(guò)程時(shí),經(jīng)常會(huì)被問(wèn)到各種各樣的鎖,如樂(lè)觀鎖、讀寫鎖等等,非常繁多,下面這篇文章主要給大家介紹了關(guān)于Java自動(dòng)釋放鎖的三種實(shí)現(xiàn)方案,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Sharding-Jdbc如何配置主從讀寫分離模式

    Sharding-Jdbc如何配置主從讀寫分離模式

    文章介紹了如何使用Sharding-JDBC實(shí)現(xiàn)MySQL的讀寫分離,通過(guò)配置主從數(shù)據(jù)源和讀寫分離策略,可以在項(xiàng)目中實(shí)現(xiàn)高效的數(shù)據(jù)庫(kù)讀寫操作,同時(shí),文章還提到解決MySQL連接異常的一個(gè)常見方法
    2025-03-03
  • java實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字

    java實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • Java基于ReadWriteLock實(shí)現(xiàn)鎖的應(yīng)用

    Java基于ReadWriteLock實(shí)現(xiàn)鎖的應(yīng)用

    這篇文章主要介紹了Java基于ReadWriteLock實(shí)現(xiàn)鎖的應(yīng)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Spring Batch批處理框架使用解析

    Spring Batch批處理框架使用解析

    這篇文章主要介紹了Spring Batch批處理框架使用解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Java?深入理解創(chuàng)建型設(shè)計(jì)模式之建造者模式

    Java?深入理解創(chuàng)建型設(shè)計(jì)模式之建造者模式

    建造者(Builder)模式和工廠模式的關(guān)注點(diǎn)不同:建造者模式注重零部件的組裝過(guò)程,而工廠方法模式更注重零部件的創(chuàng)建過(guò)程,但兩者可以結(jié)合使用
    2022-02-02
  • IDEA如何解決properties文件亂碼問(wèn)題

    IDEA如何解決properties文件亂碼問(wèn)題

    IDEA編輯器中打開properties文件時(shí)出現(xiàn)中文亂碼,可以通過(guò)修改文件編碼格式來(lái)解決,具體步驟為:設(shè)置》Setting》Editor》FileEncodings,將編碼格式更改為UTF-8
    2025-01-01

最新評(píng)論

临清市| 长武县| 铅山县| 宜兴市| 江川县| 磴口县| 招远市| 鄂州市| 七台河市| 察哈| 剑川县| 屏南县| 商丘市| 兴国县| 灌云县| 化德县| 甘德县| 手游| 榕江县| 永清县| 竹溪县| 东阿县| 冀州市| 琼结县| 龙胜| 方城县| 赤峰市| 华宁县| 双鸭山市| 镇原县| 通渭县| 吉安县| 万山特区| 镇江市| 连州市| 宁晋县| 维西| 贺兰县| 白玉县| 永兴县| 德令哈市|