java / expert
Snippet
Optimierte Ereignisbehandlung mit GenericApplicationListener
GenericApplicationListener ermöglicht eine extrem feingranulare Filterung von Ereignissen, bevor sie die Listener-Logik erreichen, indem sowohl der Ereignistyp als auch die Quelle geprüft werden, was die Leistung in Systemen mit hohem Durchsatz verbessert.
snippet.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Componentpublic class SelectiveEventListener implements GenericApplicationListener {@Overridepublic boolean supportsEventType(ResolvableType eventType) {return OrderPlacedEvent.class.isAssignableFrom(eventType.getRawClass());}@Overridepublic boolean supportsSourceType(Class<?> sourceType) {return ExternalSystem.class.equals(sourceType);}@Overridepublic void onApplicationEvent(ApplicationEvent event) {// Logic for specific event and source}}
spring
Erklärung
1
implements GenericApplicationListener
Bietet Low-Level-Hooks für intelligente Ereignisfilterung.
2
supportsEventType(ResolvableType eventType)
Bestimmt, ob dieser Listener die spezifische Ereignisklasse verarbeiten soll.
3
supportsSourceType(Class<?> sourceType)
Filtert Ereignisse basierend auf dem Ursprung (Quelle) des Ereignisses.