Я заканчиваю изучение языка Java и хочу писать очень маленькие веб-приложения, так как Facelets, похоже, заменяет JSP, и JSF кажется излишним для небольших веб-приложений, могу ли я просто изучить Facelets и использовать его без весь стек JSF? или я должен просто пойти с JSP для этого небольшого веб-приложения?
Лицевые стороны без JSF
Ответ 1
Он может использоваться без JSF. Просто нарисуйте FacesServlet
по шаблону URL *.xhtml
в web.xml
и выполните not declare
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
в любом шаблоне Facelet. На самом деле это не вредно объявить их, но таким образом вы не будете "случайно" использовать их. Вы можете как хорошо писать простой HTML в нем и отправить форму на простой сервлет и иметь сервлет вперед/перенаправление на Facelet.
Вам нужно только помнить, что с сервлетом вы получаете гораздо больше кода шаблона для сбора параметров запроса, преобразования/проверки их, поддержания и обновления значений модели, вызывая бизнес-действия, в то время как все эти повторяющиеся шаблоны код не нужен с полноценным управляемым JSF bean.
Кроме того, вы не можете использовать Facelets с фреймворками MVC на основе запроса, которые доступны только для тегов JSP, таких как Struts, Spring MVC и т.д.
Ответ 2
Лицевые стороны разработаны для нужд JSF и так зависят от JSF. Если вам нужно шаблонирование для JSP, просто используйте < @import > или более расширенную библиотеку как Apache Tiles.