Maison > Java > javaDidacticiel > le corps du texte

Introduction à la surveillance des événements Springboot (avec code)

不言
Libérer: 2019-04-12 10:36:06
avant
3655 Les gens l'ont consulté

Cet article vous présente une introduction à la surveillance des événements Springboot (avec code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Définir les événements

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

   public TestEvent(Object source, String msg) {
       super(source);
       this.msg = msg;
   }
}
Copier après la connexion

Définir la surveillance des événements (méthode d'annotation)

 @Component
 public class TestListen {
   @EventListener
   public void testListen(TestEvent event) {
       System.out.println(event.getMsg());
   }
}
Copier après la connexion

Remarque : annotation @Component

Publier l'événement

@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);
   }
}
Copier après la connexion

Séquence d'exécution lors du test :

  1. i loop
  2. Imprimer "event = [ Écoute d'événement de test]"
  3. boucle j

Écoute asynchrone

Écoute plus annotation @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() + "]");
       }
   }
}
Copier après la connexion

Séquence d'exécution pendant les tests :

  1. i loop
  2. j loop
  3. Print "event = [test event listening]"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal