前言-1-Servlet JSP应用架构

前言 1Servlet/JSP应用架构

Servlet是一个Java程序,一个Servlet应用有一个或多个Servlet程序。JSP页面会被转换和编译成Servlet程序。
Servlet应用无法独立运行,必须运行在Servlet容器中。Servlet容器将用户的请求传递给Servlet应用,并将Servlet应用生成的结果返回给用户。由于大部分Servlet应用都包含多个 JSP页面,因此更准确地说是“Servlet/JSP应用”。
Web用户通过Web浏览器例如IEMozilla Firefox 或者谷歌Chrome来访问Servlet应用。通常,Web浏览器又叫Web客户端。
Web服务器和Web客户端间通过HTTP协议通信, 因此**Web服务器也叫HTTP服务器**。下面会详细讨论 HTTP协议。

Servlet/JSP容器是一个可以同时处理Servlet和静态内容的Web容器。过去,由于通常认为HTTP服务器比 Servlet/JSP容器更加可靠,因此人们习惯将Servlet/JSP 容器作为HTTP服务器如Apache HTTP服务器的一个模块。这种模式下,HTTP服务器用来处理静态资源,而 Servlet/JSP容器则负责生成动态内容。如今, Servlet/JSP容器更加成熟可靠,并被广泛地独立部署。 Apache TomcatJetty是当前最流行的Servlet/JSP容器, 并且它们是免费而且开源的。你可以访问 http://tomcat.apache.org 以及http://www.eclipse.org/jetty 下载。
ServletJSP只是Java企业版中众多技术中的两个,其他Java EE技术还有Java消息服务,企业Java对象、JavaServer Faces以及Java持久化等,完整的Java EE 技术列表可以访问如下地址:
http://www.oracle.com/technetwork/java/javaee/tech/index.html
要运行Java EE应用,需要一个Java EE容器,例如 GlassFishJBossOracle Weblogic或者IBM WebSphere。诚然,我们可以将一个Servlet/JSP应用部署到一个Java EE容器上,但一个Servlet/JSP容器就已经满足需要了,并且更加轻量。当然,TomcatJetty不是 Java EE容器,因此无法运行EJBJMS技术。