Servlet - 概述



什么是 Servlet?

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

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

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

  • 性能显著提高。

  • Servlet 在 Web 服务器的地址空间中执行。无需为每个客户端请求创建一个单独的进程。

  • Servlet 是平台无关的,因为它们是用 Java 编写的。

  • 服务器上的 Java 安全管理器实施一组限制以保护服务器机器上的资源。因此,Servlet 是可信的。

  • Servlet 可以使用 Java 类库的全部功能。它可以通过您已经见过的套接字和 RMI 机制与小程序、数据库或其他软件进行通信。

Servlet 架构

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

Servlets Architecture

Servlet 任务

Servlet 执行以下主要任务:

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

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

  • 处理数据并生成结果。此过程可能需要与数据库通信、执行 RMI 或 CORBA 调用、调用 Web 服务或直接计算响应。

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

  • 将隐式 HTTP 响应发送到客户端(浏览器)。这包括告诉浏览器或其他客户端返回何种类型的文档(例如 HTML)、设置 Cookie 和缓存参数以及其他此类任务。

Servlet 包

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

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

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

Java Servlet 的创建和编译方式与任何其他 Java 类相同。安装 Servlet 包并将其添加到计算机的类路径后,您可以使用 JDK 的 Java 编译器或任何其他当前编译器编译 Servlet。

接下来是什么?

我将逐步指导您设置环境以开始使用 Servlet。所以系好安全带,与 Servlet 一起享受一段愉快的旅程吧。我相信您会非常喜欢本教程。

广告