Model-View-Controller (MVC) является архитектурным шаблон , который отделяет приложение на три основные логические компоненты: model , то view , и controller . Каждый из этих компонентов построены для обработки конкретных аспектов разработки приложения. MVC является одним из наиболее часто используемых отраслевого стандарта рамок веб-разработки для создания масштабируемых и расширяемых проектов.
Модель (Model)
Этот блок инкапсулирует данные приложения. На практике это POJO-классы (Plain Old Java Objects – Простые старые Java-объекты).
Представление (View)
Модуль представления отвечает за вывод данных пользователю. Обычно это JSP файл, который может быть опознан и интерпретирован браузером на пользовательской машине.
Контроллер (Controller)
Контроллер отвечает за обработку запросов пользователей и передачу данных модулю View для обработки.
В основе Spring MVC Framework лежит DispatcherServlet, задача которого – обработка всех HTTP запросов и ответов.
После получения HTTP-запроса DispatcherServlet (далее – DS) выполняет следующие дейстdия.
1. После получения HTTP-запроса DispatcherServlet даёт указание объекту Handling Mapping (обработка связывания), который вызывает следующий объект.
2. DS посылает запрос контроллеру и вызывает соответствующие методы, в основе которых лежат методы GET и POST. Эти методы возвращают объект, в соответствии с бизнес логикой метода и передают название (название ссылки) обратно в DS.
3. C помощью View Resolver, DS подбирает необходимый вид для запроса.
4. И, когда внешний вид сформирован, DS передаёт эти данные в модуль View, который обрабатывается браузером пользователя