Junior — Middle
Leg het concept van Interceptor in Java uit en wat het doel ervan is
sobes.tech AI
Antwoord van AI
Interceptor is een ontwerppatroon dat het mogelijk maakt om methodenaanroepen, verzoeken of berichten te onderscheppen om extra logica uit te voeren vóór of na de hoofdactie.
In Java wordt de Interceptor vaak gebruikt in technologieën zoals Java EE (bijvoorbeeld CDI, EJB), waar methoden kunnen worden gedefinieerd die automatisch worden aangeroepen bij het aanroepen van zakelijke methoden, om cross-cutting functionaliteiten te implementeren: logging, transacties, beveiliging, caching, enz.
Voorbeeld van een eenvoudige Interceptor in Java EE:
@Interceptor
public class LoggingInterceptor {
@AroundInvoke
public Object logMethod(InvocationContext ctx) throws Exception {
System.out.println("Aanroep van methode: " + ctx.getMethod().getName());
Object result = ctx.proceed(); // aanroep van de doelmethode
System.out.println("Methode voltooid");
return result;
}
}
Het doel van de Interceptor is om de hulplogica te scheiden van de hoofdlogica, de modulariteit te verhogen en hergebruik van code te bevorderen.