java / intermediate
Snippet
Komponentenentkopplung mit Application Events
Spring Application Events ermöglichen es Komponenten, ohne direkte Abhängigkeiten zu kommunizieren. Dies folgt dem Observer-Muster, wodurch das System modularer und leichter erweiterbar wird.
snippet.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@Componentpublic class OrderService {@Autowiredprivate ApplicationEventPublisher eventPublisher;public void completeOrder(Order order) {// Business logic...eventPublisher.publishEvent(new OrderCompletedEvent(order));}}@Componentpublic class EmailListener {@EventListenerpublic void handleOrderCompleted(OrderCompletedEvent event) {System.out.println("Sending email for order: " + event.getOrder().getId());}}
spring
Erklärung
1
ApplicationEventPublisher
Die Schnittstelle zum Veröffentlichen von Ereignissen innerhalb des Spring-Anwendungskontexts.
2
publishEvent(new OrderCompletedEvent(order))
Sendet das Ereignisobjekt an alle registrierten Listener.
3
@EventListener
Annotation, die eine Methode als Listener für einen bestimmten Ereignistyp markiert.