Web 服务器需要一个 JSP/Servelt 容器来处理对 JSP 页面的请求,它们必须相互协作,才能为 JSP 的运行提供良好的环境。
下面的图片显示了JSP 容器在整个网络请求中的地位:
下面说一下Web服务器如何通过JSP容器来创建HTML页面:
总结:Web服务器直接与用户交互,接收并响应HTTP请求;JSP/Servlet容器直接与Web服务器交互,接收Web服务器的调用,并将产生的结果传递给Web服务器。
下面的图片展示了JSP容器如何生成HTML:
一般情况下,JSP容器会检查JSP文件对应的servlet是否已经存在,并且检查JSP文件的修改日期是否早于servlet。如果JSP文件的修改日期早于对应的servlet,那么容器就可以确定JSP文件没有被修改过,servlet是有效的。这使得JSP的运行效率要比其他脚本语言(例如PHP、ASP)快一些。
可以说,JSP 页面就是用另一种方式来编写servlet程序,你不需要成为Java高手。除了需要翻译外,JSP 页面几乎可以被看做一个普通的servlet程序。