MVC
– MODEL, VIEW, CONTROLLER. Популярная архитектура построения приложений. Нужно знать.
CONTROLLER
– сервлет для взаимодействия между клиентом, MODEL и VIEW.VIEW
– страница, которая видна пользователю – jsp.MODEL
– класс для извлечения информации из ресурса (БД например) или добавления в него информации (иногда этот класс отождествляют с ресурсом)).
Клиент может передавать какие либо данные в CONTROLLER через VIEW, то есть через страницу, которую клиент видит.
Также клиент может получать данные на VIEW из CONTROLLER. То есть всё, что клиент видит на VIEW, получено из CONTROLLER.
Откуда же CONTROLLER берет данные, которые он отсылает на VIEW и куда CONTROLLER отсылает данные присланные в него клиентом?
CONTROLLER получает данные из ресурса c помощью MODEL и отправляет их клиенту на VIEW, а когда клиент отсылает данные в CONTROLLER, то CONTROLLER с помощью MODEL отправляет их в ресурс для сохранения их там.
Давайте создадим класс модели, класс контроллера и jsp страницу вью. В качестве ресурса для упрощения пусть будет простой объект User
, а не БД или что либо еще.
Model
Для начала, создадим небольшой класс User
, объект которого будет ресурсом:
Код класса модели, который извлекает данные из ресурса:
Видим, что Model возвращает user
, то есть объект-ресурс.
Controller
Создадим контроллер, который будет через модель извлекать объект-ресурс user
и отправлять его на View клиенту.
Пример программы:
Теперь поскольку мы положили данные ресурса в аттрибут уровня контекста, мы можем извлечь их на View.
View
Теперь на View, то есть странице, которую видит клиент с помощью actionBean
извлекаем данные ресурса положенные в контекст в контроллере:
Проверка работы созданной MVC архитектуры.
Теперь запустим контроллер:

Он через модель извлечет данные ресурса и поместит их в аттрибут контекста, чтобы вью мог их отобразить
Откроем теперь вью:

Очевидно созданная архитектура работает корректно.