我即将完成 Java 语言的学习并希望编写非常小的 Web 应用程序,因为 Facelets 似乎是 JSP 的替代品,而 JSF 对于小型 Web 应用程序来说似乎太过分了,我可以只学习 Facelets 并在没有整个 JSF 堆栈?还是我应该为这个小型 Web 应用程序使用 JSP?
最佳答案
它可以在没有 JSF 的情况下使用。只需将 FacesServlet
映射到 web.xml
中 *.xhtml
的 URL 模式,并不声明
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
在任何 Facelet 模板中。声明它们实际上并无害处,但这样您就不会“意外地”使用它们。您也可以在其中编写纯 HTML 并将表单提交给纯 servlet,然后让 servlet 转发/重定向到 Facelet。
你只需要记住,使用 servlet 你最终会得到更多的样板代码来收集请求参数、转换/验证它们、维护和更新模型值、调用业务操作,而所有这些重复的样板代码完全有值(value)的 JSF 托管 bean 不需要代码。
此外,您不能将 Facelets 与基于请求的 MVC 框架一起使用,这些框架只有 JSP 标签库可用,例如 Struts、Spring MVC 等。
关于java - 没有 JSF 的 Facelets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11569097/