我有一些问题。这些是:

JSP和Servlet是如何相互关联的?JSP是某种Servlet吗?JSP和JSF是如何相互关联的?JSF是一种类似ASP.NET-MVC的基于预构建UI的JSP吗?


当前回答

Servlet是在web容器内执行的服务器端java程序。servlet的主要目标是处理从客户端接收的请求。

Java Server Pages用于创建动态网页。Jsp被引入来在单个文件中编写java加html代码,这在servlet程序中并不容易做到。当jsp文件被翻译时,它被转换为javaservlet。

Java Server Faces是一个MVC web框架,它简化了UI的开发。

其他回答

JSP是MVC(模型视图控制器)的视图组件。Controller接受传入的请求并将其传递给Model,Model可能是一个执行某些数据库访问的bean。然后JSP使用HTML、CSS和JavaScript格式化输出,然后将输出发送回请求者。

的确,JSP在执行时被转换为servlet,而JSF是一个全新的东西,因为JSF允许以标记的形式编写所有的编程结构,从而使网页更可读。

Java Server Pages(JSP)是一种Java技术,它使Web开发人员和设计人员能够快速开发和轻松维护利用现有业务系统的信息丰富的动态Web页面。JSP技术将用户界面与内容生成分离开来,使设计者能够在不改变底层动态内容的情况下更改整个页面布局。

Facelets是为JSF(JavaServerFaces)设计的第一种非JSP页面声明语言,与JSP相比,它为JSF开发人员提供了更简单、更强大的编程模型。它解决了JSP中web应用程序开发中出现的不同问题。

下面是一张表格,比较了scriples和facelets的特征:

来源

JSP代表JavaServerPages,而JSF代表JavaServerFaces。JSP是一种帮助开发人员使用HTML、XML和其他类似语言等技术开发动态网页的技术。JSF是一个帮助开发人员为服务器端应用程序开发用户界面的框架。这两种技术都基于Java,主要用于基于web的应用程序。JSP更像ASP或PHP,只是它基于Java,这意味着它使用Java编程语言。这两项技术均由Sun Microsystems开发。值得注意的是,JSP1.x版本使用JSP作为模板的默认系统,而JSP2.x使用Facelets而不是JSP。

Servlet和JSP之间的基本区别在于,在Servlet中我们编写java代码,并且嵌入HTML代码,而JSP的情况正好相反。在JSP中,我们编写HTML代码,并使用JSP提供的标记嵌入java代码。