Heim > Java > javaLernprogramm > Hauptteil

Einführung in die Springboot-Ereignisüberwachung (mit Code)

不言
Freigeben: 2019-04-12 10:36:06
nach vorne
3655 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Einführung in die Springboot-Ereignisüberwachung (mit Code). Freunde in Not können darauf verweisen.

Ereignisse definieren

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

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

Ereignisüberwachung (Annotationsmethode) definieren

 @Component
 public class TestListen {
   @EventListener
   public void testListen(TestEvent event) {
       System.out.println(event.getMsg());
   }
}
Nach dem Login kopieren

Hinweis: @Component-Annotation

Ereignis veröffentlichen

@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);
   }
}
Nach dem Login kopieren

Ausführungsreihenfolge beim Testen:

  1. i-Schleife
  2. Drucken Sie „event = [Test Event Listening]“
  3. j-Schleife

Asynchrones Abhören

Abhören plus @Async-Annotation

@Component
public class TestListen {
   @EventListener
   @Async
   public void testListen(TestEvent event) {
       for (int i = 0; i < 10; i++) {
           System.out.println("event = [" + event.getMsg() + "]");
       }
   }
}
Nach dem Login kopieren

Ausführungsreihenfolge beim Testen:

  1. i-Schleife
  2. j-Schleife
  3. print „event = [Test Event Listening]“

Das obige ist der detaillierte Inhalt vonEinführung in die Springboot-Ereignisüberwachung (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage