+1 за размещение фотографии презентации Манфреда Рима в Devoxx. Я имел в виду именно этот слайд, когда гуглял по этой теме.

шал, что JSF реализует MVC на основе компонентов, а Spring MVC реализует MVC на основе запросов. Я хотел бы знать, какова точная техническая разница между этими двумя типами.

 BalusC02 апр. 2017 г., 08:37
При всем уважении, запрос технических различий не основывается главным образом на мнении.
 Roman C01 апр. 2017 г., 14:15
Многие хорошие вопросы генерируют определенную степень мнения, основанного на опыте экспертов, но ответы на этот вопрос, как правило, будут почти полностью основаны на мнениях, а не на фактах, ссылках или конкретных знаниях.

Ответы на вопрос(1)

Решение Вопроса

основанном на запросе (действии), один сервлет фронт-контроллера будет делегировать моделям действий на основе URL / параметров запроса. Вы работаете напрямую с rawHttpServletRequest а такжеHttpServletResponse объекты в модели действия. Вы должны написать код самостоятельно, чтобы собрать, преобразовать и проверить параметры запроса и, при необходимости, обновить значения модели, прежде чем вы сможете вызвать бизнес-действие.

на основе компонентов один фронт-контроллер будет собирать, преобразовывать и проверять параметры запроса и обновлять значения модели самостоятельно, так что вам нужно только самостоятельно заботиться о бизнес-действиях. То, как контроллер должен собирать / преобразовывать / проверять / обновлять значения, определяется в одном месте - представлении. Поскольку это невозможно с «простым» HTML, для достижения цели требуется специальный язык разметки. В случае JSF 2.0 это основано на XML (XHTML). Вы используете XML для определения компонентов пользовательского интерфейса, которые, в свою очередь, содержат информацию о том, как контроллер должен собирать / преобразовывать / проверять / обновлять значения модели и генерировать / отображать необходимое представление HTML.

Преимущества и недостатки должны быть понятны в этом пункте: с основанной на запросе платформой MVC вам нужно написать больше (шаблонный) код самостоятельно для достижения цели. Однако в результате вы получаете гораздо более детальный контроль над процессом и выводом HTML / CSS / JS. С компонентной средой MVC вам не нужно писать много кода самостоятельно. Однако вы имеете менее детальный контроль над процессом и выводом HTML / CSS / JS. Так что если вы хотите сделать что-тонемного иначе, чем стандарт описывает и / или обеспечивает реализация, тогда вы будете тратить гораздо больше времени на компонентную среду MVC, когда вы не очень хорошо разбираетесь в ее плюсах и минусах.

Манфред Рим (член команды JSF 2.x и бывший специалист по Java EE 8 MVC 1.0) хорошо обрисовал это во времяего речь о MVC 1.0 (JSR 371) на Devoxx 14:

Смотрите также:Зачем нужен JSF, когда пользовательский интерфейс может быть реализован с помощью CSS, HTML, JavaScript, jQuery?Каковы основные недостатки Java Server Faces 2.0?Использование JSF в качестве технологии просмотра Spring MVCШаблоны проектирования веб-приложений
 Jaap Coomans29 янв. 2015 г., 08:33
+1 за размещение фотографии презентации Манфреда Рима в Devoxx. Я имел в виду именно этот слайд, когда гуглял по этой теме.
 BalusC26 янв. 2011 г., 14:17
Нет, он явно не представляет базу данных. В мире Java модель - это просто Javabean. Javabean в свою очередь можеттакже быть объектом базы данных. Это именно тот класс, который используется кодом JDBC или JPA для отображения / передачи значений между средой выполнения Java и таблицей базы данных.
 Omar Gamil12 дек. 2013 г., 14:41
asp.net mvc основан на запросах, он не имеет состояния и основан на механизме GET / POST.
 hari_sree13 сент. 2012 г., 20:58
так что делает ASP.NET MVC компонент на основе, обряд?
 Krishna26 янв. 2011 г., 14:13
Многие говорят, что в MVC модель представляет собой базу данных. Это правда? Это бин или база данных?

Ваш ответ на вопрос