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 Codepublic 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 应用程序的重要技术。