一尘不染

Java EE 6:JSF与Servlet + JSP。我应该学习JSF吗?

jsp

我试图通过阅读http://java.sun.com/javaee/6/docs/tutorial/doc/gexaf.html来熟悉Java
EE 6 。我对使用JSF感到有些困惑。
通常,在我开发Web
App的方式中,Servlet将充当控制器,而JSP将充当MVC模型中的View。那么,JSF是否尝试替换此结构?以下是上述教程的报价:

Servlet最适合于面向服务的App,而面向演示的App的控制功能(如调度请求)
更适合于生成JSF和Facelet,如XHTML等标记,通常用于面向演示的App

不知道我是否对上述引用理解得太清楚,他们没有很好地解释什么是面向服务的与面向表示的。

JavaServer Faces应用程序可以将HTTP请求映射到特定于组件的事件处理,并将组件作为服务器上的有状态对象进行管理。

有经验的Java开发人员可以为我提供有关JSF,JSP和Servlet的快速概述吗?是否将它们全部集成在一起,还是在App的基础上单独使用它们?如果是这样,那么与Servlet和JSP相比,哪种应用程序使用JSF?

JavaServer Faces应用程序可以将HTTP请求映射到特定于组件的事件处理,并将组件作为服务器上的有状态对象进行管理。

听起来像servlet可以做什么,但不确定manage components as stateful objects on the server。甚至不确定那是什么意思?提前致谢。


阅读 250

收藏
2020-06-08

共1个答案

一尘不染

基本上,JSF使您能够仅使用模型对象(JavaBeans)和视图(JSP / XHTML页面)开发Web应用程序。使用“普通香草” JSP /
Servlet,您将必须引入许多代码来控制,预处理,后处理,收集数据,验证,转换,监听等HTTP请求和响应。然后,我并不是说要对其进行高度(抽象)的重构,以便您也能以与JSF相同的方式结束(每个用例只是一个JavaBean类和一个JSP
/ XHTML页面)。

2020-06-08