ホームページ >Java >&#&チュートリアル >Springboot イベント監視の概要 (コード付き)

Springboot イベント監視の概要 (コード付き)

不言
不言転載
2019-04-12 10:36:063686ブラウズ

この記事では、Springboot イベント監視の概要 (コード付き) を紹介します。これには一定の参考価値があります。必要な友人は参考にしてください。お役に立てれば幸いです。

#イベントの定義

@Getter
public class TestEvent extends ApplicationEvent {
   private String msg;

   public TestEvent(Object source, String msg) {
       super(source);
       this.msg = msg;
   }
}

イベント監視の定義 (アノテーション メソッド)

 @Component
 public class TestListen {
   @EventListener
   public void testListen(TestEvent event) {
       System.out.println(event.getMsg());
   }
}
注: @Component アノテーション

イベントの発行

@Autowired
private ApplicationContext publiser;

@GetMapping("test-listen")
public void testListen() {
    for (int i = 0; i < 10; i++) {
        System.out.println("i = " + i);
    }
    publiser.publishEvent(new TestEvent(this, "测试事件监听"));
    for (int j = 0; j < 10; j++) {
       System.out.println("j = " + j);
   }
}
テスト中の実行シーケンス:

    i ループ
  1. Print "event = [テスト イベント リスニング]"
  2. j ループ

非同期モニタリング

Listening と @Async アノテーション

@Component
public class TestListen {
   @EventListener
   @Async
   public void testListen(TestEvent event) {
       for (int i = 0; i < 10; i++) {
           System.out.println("event = [" + event.getMsg() + "]");
       }
   }
}
テスト中の実行順序:

    i ループ
  1. j ループ
  2. Print "event = [テスト イベント リスニング]"

以上がSpringboot イベント監視の概要 (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。