Servlets 简明教程

Servlets - Overview

What are Servlets?

Java Servlet 是运行在 Web 或应用程序服务器上的程序,充当来自 Web 浏览器或其他 HTTP 客户端的请求与 HTTP 服务器上的数据库或应用程序之间的中间层。

使用 Servlet,您可以通过网页表单收集用户的输入,显示来自数据库或其他来源的记录,以及动态地创建网页。

Java Servlet 通常与使用通用网关接口 (CGI) 实现的程序具有相同用途。但与 CGI 相比,Servlet 提供了几个优点。

  1. Performance is significantly better.

  2. Servlet 在 Web 服务器的地址空间内执行。无需创建单独的进程来处理每个客户端请求。

  3. Servlet 是平台独立的,因为它们是用 Java 编写的。

  4. 服务器上的 Java 安全管理器会实施一组限制来保护服务器机器上的资源。因此 Servlet 是受信任的。

  5. Servlet 可以使用 Java 类库的全部功能。它可以通过您已经了解的套接字和 RMI 机制与 applet、数据库或其他软件进行通信。

Servlets Architecture

下图显示了 Servlet 在 Web 应用程序中的位置。

servlet arch

Servlets Tasks

Servlet 执行以下主要任务 -

  1. 读取客户端(浏览器)发送的显式数据。这包括网页上的 HTML 表单,它也可以来自 applet 或自定义 HTTP 客户端程序。

  2. 读取客户端(浏览器)发送的隐式 HTTP 请求数据。这包括 cookie、媒体类型和浏览器了解的压缩方案等。

  3. 处理数据并生成结果。此过程可能需要与数据库交谈,执行 RMI 或 CORBA 调用,调用 Web 服务或直接计算响应。

  4. 向客户端(浏览器)发送显式数据(即文档)。此文档可以用各种格式发送,包括文本(HTML 或 XML)、二进制(GIF 图像)、Excel 等。

  5. 向客户端(浏览器)发送隐式 HTTP 响应。这包括告诉浏览器或其他客户端正在返回什么类型的文档(例如 HTML)、设置 cookie 和缓存参数以及其他此类任务。

Servlets Packages

Java Servlet 是由 Web 服务器运行的 Java 类,该 Web 服务器具有支持 Java Servlet 规范的解释器。

可以使用 javax.servletjavax.servlet.http 包创建 Servlet,这些包是 Java 企业版的标准部分,Java 类库的扩展版本支持大型开发项目。

这些类实现了 Java Servlet 和 JSP 规范。在编写本教程时,版本是 Java Servlet 2.5 和 JSP 2.1。

Java servlet 的创建和编译与任何其他 Java 类一样。在安装 servlet 包并将它们添加到计算机的类路径后,可以使用 JDK 的 Java 编译器或任何其他当前编译器编译 servlet。

What is Next?

我将一步步带您设置环境以开始使用 Servlet。因此,系好安全带,享受与 Servlet 的驾驶乐趣。我相信您会非常喜欢本教程。