Junior — Middle
Magyarázza el az Interceptor fogalmát Java-ban, és hogy mi a célja
sobes.tech MI
Válasz az MI-től
Az Interceptor egy tervezési minta, amely lehetővé teszi a metódushívások, kérések vagy üzenetek elfogását a fő művelet előtt vagy után végrehajtandó kiegészítő logika végrehajtásához.
Java-ban az Interceptor gyakran használatos olyan technológiákban, mint a Java EE (pl. CDI, EJB), ahol meghatározhatók olyan módszerek, amelyek automatikusan meghívódnak az üzleti módszerek hívásakor, hogy keresztmetszeti funkciókat valósítsanak meg: naplózás, tranzakciók, biztonság, gyorsítótárazás stb.
Egyszerű Interceptor példája Java EE-ben:
@Interceptor
public class LoggingInterceptor {
@AroundInvoke
public Object logMethod(InvocationContext ctx) throws Exception {
System.out.println("Metódushívás: " + ctx.getMethod().getName());
Object result = ctx.proceed(); // célmetódus hívása
System.out.println("Metódus végrehajtva");
return result;
}
}
Az Interceptor célja, hogy elkülönítse a segédlogikát a fő logikától, növelje a modularitást és a kód újrahasznosíthatóságát.