📜  Servlet – 请求接口(1)

📅  最后修改于: 2023-12-03 14:47:24.977000             🧑  作者: Mango

Servlet – 请求接口

简介

Servlet是Java Web应用程序的重要组成部分之一。在Java EE开发中,Servlet通过HTTP协议处理客户端的请求并生成相应的响应内容。HttpServletRequest接口是Servlet API中用于表示客户端HTTP请求的核心接口之一,提供了获取请求中的各种信息的方法。

HttpServletRequest接口

HttpServletRequest接口是javax.servlet包中的一个接口,它继承了javax.servlet.ServletRequest接口。HttpServletRequest提供了访问HTTP请求的方法。

方法列表

以下是HttpServletRequest接口中常用的方法:

  • getParameter(String name) :返回指定名称的请求参数值。
  • getParameterMap(): 返回所有请求参数的Map对象。
  • getParameterNames():返回一个Enumeration对象,包含所有请求参数的名称。
  • getParameterValues(String name):返回指定名称的请求参数的所有值。
  • getMethod():返回HTTP请求使用的方法(如GET、POST等)。
  • getProtocol():返回请求使用的协议的名称和版本。
示例
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloWorldServlet extends HttpServlet {

  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html><body>");
    out.println("<h1>Hello World!</h1>");
    out.println("</body></html>");
  }

  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    // 获取输入参数username和password
    String username = request.getParameter("username");
    String password = request.getParameter("password");

    // 做一些业务逻辑处理

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html><body>");
    out.println("<h1>登录成功!</h1>");
    out.println("<p>用户名:" + username + "</p>");
    out.println("<p>密码:" + password + "</p>");
    out.println("</body></html>");
  }
}

在上面的示例中,我们通过HttpServletRequest接口的 getParameter() 方法获取了请求中的参数值,并在 doPost() 方法中使用了这些参数值完成了一些业务逻辑处理。