В этом изображении (который я получил отсюда), Запрос HTTP отправляет что-то в Сервлет Диспетчера.
Мой Вопрос - то, что делает Сервлет Диспетчера?
Это - что-то как получение информации, брошенной от веб-страницы и броска его к контроллеру?
Работа DispatcherServlet заключается в получении входящего URI и поиске правильной комбинации обработчиков (обычно методы классов Controller) и представлений (обычно JSP), которые формируют страницу или ресурс, который должен быть найден в этом месте.
У меня может быть
/WEB-INF/jsp/pages/Home.jsp
и метод на классе
@RequestMapping(value="/pages/Home.html")
private ModelMap buildHome() {
return somestuff;
}
Сервлет Dispatcher - это та часть, которая "знает", что нужно вызвать этот метод, когда браузер запрашивает страницу, и объединить его результаты с соответствующим JSP-файлом для создания html-документа.
Как он это делает, зависит от конфигурации и версии Spring.
Также нет причин, почему конечным результатом должны быть именно веб-страницы. Он может делать то же самое для нахождения RMI конечных точек, обработки SOAP запросов, всего, что может прийти в сервлет.
DispatcherServlet
- это реализация Spring MVC паттерна front controller.
См. описание в документации Spring здесь.
По сути, это сервлет, который принимает входящий запрос и делегирует обработку этого запроса одному из нескольких обработчиков, отображение которых определено в конфигурации DispatcherServlet
.