Встречается на собеседованиях • сегодня
Как узнать, что вызывает методы контроллера без документации
В Spring можно использовать AOP (Aspect-Oriented Programming) для логирования вызовов методов контроллера. Пример с аннотацией @Before:
java
@Aspect
@Component
public class ControllerLoggingAspect {
private static final Logger logger = LoggerFactory.getLogger(ControllerLoggingAspect.class);
@Before("execution(* com.example.controllers.*.*(..))")
public void logControllerMethod(JoinPoint joinPoint) {
logger.info("Method called: {} with args: {}",
joinPoint.getSignature().toShortString(),
Arrays.toString(joinPoint.getArgs()));
}
}Другие способы:
- Логирование в Spring Boot через
logging.level.org.springframework.web=DEBUG - Использование
HandlerInterceptorдля перехвата запросов - Дебаггер с точкой останова в контроллерах
Для REST API можно добавить фильтр для логирования входящих запросов:
java
@Component
public class RequestLoggingFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(...) {
logger.info("Request: {} {}", request.getMethod(), request.getRequestURI());
chain.doFilter(request, response);
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы