JSF против Facelets против JSP
Кажется, я не могу получить четкий ответ относительно конкретного различия между Java Server Faces и так называемыми Facelets. Кто-нибудь может дать мне четкий ответ?!?
Кроме того, я понимаю, что для создания динамических веб-страниц можно использовать JSF или JSP, но две, казалось бы, противоречивые детали меня смущают. Я слышал оба следующих:
Это JSF является заменой для JSP; а также
JSF и JSP образуют разные части представления в парадигме MVC веб-уровня Java
Так что это? Логика подсказывает, что почти наверняка не может быть и того и другого!
4 ответа
- JSF - это стандартизированная среда Java для веб-интерфейсов, основанная на шаблоне MVC
- JSP - это (намного более старый) стандарт для создания веб-страниц из шаблонов - их можно использовать как представление в приложении JSF, но также отдельно от JSF.
- Facelets - это альтернативная технология представления, основанная на чистых шаблонах XML (без скриплетов), которая была представлена в Версии 2 стандарта JSF. Они могут использоваться только в приложении JSF.
В свете этого давайте посмотрим на ваши противоречивые утверждения:
Это JSF является заменой для JSP; а также
Не совсем так, поскольку JSF может использовать JSP для своего просмотра (и должен был до JSF 2). Однако приложения JSF, использующие Facelets, можно рассматривать как замену технологиям на основе JSP.
JSF и JSP образуют разные части представления в парадигме MVC веб-уровня Java
Совершенно неправильно - JSF покрывает весь шаблон MVC (хотя он может перекрываться с EJB, поскольку оба основаны на аннотациях, которые могут быть смешаны в одном классе).
JSF - это управляемая запросами веб- инфраструктура MVC, основанная на компонентной модели проектирования пользовательского интерфейса с использованием XML-файлов, называемых шаблонами представления или представлениями Facelets.
JSF - это веб-фреймворк, а Facelet - шаблон представления для JSF.
JavaServer Pages (JSP) - это технология Java, которая помогает разработчикам программного обеспечения обслуживать динамически генерируемые веб-страницы на основе HTML, XML,
Также посмотрите на эту тему Разница между JSF и JSP
Java Server Pages (JSP) - это технология Java, которая позволяет веб-разработчикам и дизайнерам быстро разрабатывать и легко поддерживать насыщенные информацией динамические веб-страницы, которые используют существующие бизнес-системы. Технология JSP отделяет пользовательский интерфейс от генерации контента, позволяя дизайнерам изменять общий макет страницы без изменения базового динамического контента.
Facelets - это первый не-JSP язык объявления страниц, разработанный для JSF (Java Server Faces), который предоставил разработчикам JSF более простую и мощную модель программирования по сравнению с JSP. Это решает различные проблемы, возникающие в JSP для разработки веб-приложений.
Вот таблица, которая сравнивает особенности скриптов и лицевых граней:
Я искал ответ на тот же вопрос. Я нашел эти ссылки очень полезными:
Пример модели приложения JSP: http://netbeans.org/kb/docs/javaee/ecommerce/design.html
Основные концепции JSF, некоторые из которых приведены на примерах: http://netbeans.org/kb/docs/javaee/ecommerce/conclusion.html