Junior — Middle
Explique o conceito de Interceptor em Java e qual é o seu propósito
sobes.tech IA
Resposta da IA
Interceptor é um padrão de projeto que permite interceptar chamadas de métodos, requisições ou mensagens para executar lógica adicional antes ou depois da ação principal.
Em Java, o Interceptor é frequentemente usado em tecnologias como Java EE (por exemplo, CDI, EJB), onde é possível definir métodos que serão chamados automaticamente ao invocar métodos de negócio, para implementar funcionalidades transversais: logging, transações, segurança, cache, etc.
Exemplo de um Interceptor simples em Java EE:
@Interceptor
public class LoggingInterceptor {
@AroundInvoke
public Object logMethod(InvocationContext ctx) throws Exception {
System.out.println("Chamada do método: " + ctx.getMethod().getName());
Object result = ctx.proceed(); // chamada ao método alvo
System.out.println("Método concluído");
return result;
}
}
O objetivo do Interceptor é separar a lógica auxiliar da principal, aumentar a modularidade e a reutilização do código.