Servlet - 概述


什么是 Servlet?

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

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

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

  • 性能明显更好。

  • Servlet 在 Web 服务器的地址空间内执行。没有必要创建单独的进程来处理每个客户端请求。

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

  • 服务器上的 Java 安全管理器强制执行一组限制来保护服务器计算机上的资源。因此 servlet 是可信的。

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

Servlet 架构

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

Servlet 架构

Servlet 任务

Servlet 执行以下主要任务 -

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

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

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

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

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

Servlet 包

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

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

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

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

下一步是什么?

我将逐步指导您设置环境以开始使用 Servlet。因此,请系好安全带,享受 Servlet 带来的美好驾驶体验。我确信您会非常喜欢本教程。