0 Tage Serie
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
java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Component
public class SelectiveEventListener implements GenericApplicationListener {
@Override
public boolean supportsEventType(ResolvableType eventType) {
return OrderPlacedEvent.class.isAssignableFrom(eventType.getRawClass());
}
@Override
public boolean supportsSourceType(Class<?> sourceType) {
return ExternalSystem.class.equals(sourceType);
}
@Override
public 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.