Если вы посмотрите на диаграмму последовательности Java EE FrontController , Контроллер делегирует запрос Dispatcher, и документ говорит, что:
Диспетчер отвечает за управление просмотром и навигацию,
управление выбором следующего представления для представления пользователю и
обеспечение механизма для векторного управления этим ресурсом.
В Spring MVC DispatcherServlet
действует как FrontController (как упомянуто в книге Крейга Уоллса), и этот сервлет передает запрос другим контроллерам, которые, в свою очередь, вызывают соответствующий класс Service (для обработки запрос), а затем снова возвращает экземпляр ModelAndView
в DispatcherServlet
.
Итак, примерно так обычно поступает запрос:
Клиент -> ДиспетчерСервлет -> Контроллер -> Сервис -> DAO
Если вы сравните этот поток с диаграммой последовательности шаблонов Java EE FrontController , то окажется, что DispatcherServlet
не является истинным FrontController.
Что вы скажете по этому поводу?