Heim  >  Artikel  >  Java  >  Einführung in die Springboot-Ereignisüberwachung (mit Code)

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

不言
不言nach vorne
2019-04-12 10:36:063629Durchsuche

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;
   }
}

Ereignisüberwachung (Annotationsmethode) definieren

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

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);
   }
}

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() + "]");
       }
   }
}

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen