Servlet 包学习笔记

概述

Servlet 是一种能够处理浏览器请求和响应的 Java 程序。Servlet 运行在 Web 服务器上,根据请求的 URL 地址将相应的请求路由到匹配的 Servlet 进行处理,并将处理结果作为响应返回给客户端。

Servlet API

Servlet API 是一组 Java 接口和类的集合,用于开发 Servlet。它提供了许多接口和类,使得 Servlet 可以方便地处理 HTTP 请求和响应。

HttpServlet 类

HttpServlet 是一个抽象类,它扩展了 GenericServlet 类,并为处理 HTTP 请求提供了更方便的方法。它包含了以下方法:

  • doGet() - 处理 HTTP GET 请求
  • doPost() - 处理 HTTP POST 请求
  • doPut() - 处理 HTTP PUT 请求
  • doDelete() - 处理 HTTP DELETE 请求

使用 HttpServlet 可以更方便地处理 HTTP 请求和响应。例如,我们可以编写一个继承自 HttpServlet 的类,重写其中的方法来处理特定的 HTTP 请求。

HttpServletRequest 类

HttpServletRequest 类表示一个 HTTP 请求。它包含了以下方法:

  • getParameter() - 获取请求参数的值
  • getHeader() - 获取请求头的值
  • getRequestURI() - 获取请求的 URI
  • getCookies() - 获取请求的 Cookie
  • getMethod() - 获取 HTTP 方法(GET、POST 等)
  • getSession() - 获取请求的 Session 对象

使用 HttpServletRequest 可以在 Servlet 中获取 HTTP 请求的各种信息,如请求参数、请求头、请求的 URI 等。

HttpServletResponse 类

HttpServletResponse 类表示一个 HTTP 响应。它包含了以下方法:

  • setStatus() - 设置响应的状态码
  • setHeader() - 设置响应头的值
  • getWriter() - 获取用于写入响应主体的 PrintWriter 对象
  • sendRedirect() - 发送重定向响应

使用 HttpServletResponse 可以在 Servlet 中向客户端返回 HTTP 响应。

示例

下面是一个简单的 Servlet 示例,它处理 GET 请求,获取请求参数并返回响应内容。

javaCopy Code
public class HelloServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); response.setContentType("text/plain"); PrintWriter out = response.getWriter(); out.println("Hello, " + name + "!"); } }

在上面的示例中,我们定义了一个名为 "HelloServlet" 的 Servlet,它处理 HTTP GET 请求。在 doGet() 方法中,我们从请求中获取名为 "name" 的参数,并使用 PrintWriter 输出响应内容。最后,我们通过设置响应的内容类型(text/plain)来告诉浏览器响应的格式。

结论

本文介绍了 Servlet 包及其相关 API,以及一个简单的 Servlet 示例。使用 Servlet 可以方便地处理 HTTP 请求和响应,是开发 Web 应用程序的重要技术。