Sobes.tech
Назад к вопросам
Junior — Middle
73

На каком уровне обработки происходит переадресация после вызова DispatcherServlet в MVC-приложении?

Компании, где спрашивали
СБЕР КорпусСБЕР Корпус

Ответ от нейросети

sobes.tech AI

Переадресация (redirect) в Spring MVC происходит после обработки запроса контроллером, то есть на уровне контроллера или после него. DispatcherServlet сначала принимает запрос, определяет контроллер, который должен его обработать, вызывает соответствующий метод контроллера, и уже внутри контроллера или в возвращаемом им объекте ModelAndView указывается, что нужно сделать переадресацию.

Например, в контроллере можно вернуть строку с префиксом "redirect:", что укажет DispatcherServlet выполнить HTTP redirect:

@GetMapping("/old-url")
public String redirect() {
    return "redirect:/new-url";
}

Таким образом, переадресация происходит на уровне контроллера, после вызова DispatcherServlet, но до формирования окончательного ответа клиенту.