Web服务器需要一个JSP引擎,即一个处理JSP页面的容器(类似于:Tomcat和Jetty)。 JSP容器负责拦截JSP页面的请求。本教程使用内置JSP容器的Apache Tomcat来支持JSP页面的开发。
JSP容器与Web服务器配合使用以提供运行时环境和JSP需要的其他服务。它知道如何解释作为JSP一部分的特殊元素。
下面的架构图显示了JSP容器和JSP文件在Web应用程序中的位置。
以下步骤说明Web服务器如何使用JSP创建Web页面 -
.jsp
(而不是.html
结尾)的URL或JSP页面完成。println()
语句,并将所有JSP元素转换为Java代码。此代码实现页面的相应动态行为。通常,JSP引擎将检查JSP文件的servlet是否已存在,并且JSP上的修改日期是否比servlet更旧。 如果JSP早于其生成的servlet,则JSP容器将会认为(假定)JSP尚未更改,生成的servlet仍然与JSP的内容相匹配,从而不必重新生成。这使得该过程比其他脚本语言(如PHP)更加有效,因此更快。
所以在某种程度上,JSP页面实际上只是另一种编写servlet的方式。除了编译阶段,JSP页面的处理方式与一般的servlet完全相同。