参考答案:
HttpServletRequest
对象是 Servlet 中用于封装客户端请求的对象,它提供了许多方法来访问请求的各种信息,如请求参数、头信息、请求路径、会话信息等。以下是 HttpServletRequest
对象的常用方法:
getParameter(String name)
:获取单个请求参数的值(如果该参数存在)。如果请求中包含多个同名参数,返回第一个参数的值。
1String username = request.getParameter("username");
getParameterValues(String name)
:获取同名参数的所有值(如果该参数有多个值)。
1String[] values = request.getParameterValues("hobbies");
getParameterMap()
:获取所有请求参数的键值对映射(Map<String, String[]>
),可以用于一次性获取所有请求参数。
1Map<String, String[]> paramMap = request.getParameterMap();
getHeader(String name)
:获取指定请求头的值。
1String userAgent = request.getHeader("User-Agent");
getHeaderNames()
:获取所有请求头的名称(Enumeration<String>
)。
1Enumeration<String> headerNames = request.getHeaderNames();
getIntHeader(String name)
:获取指定请求头的整数值。
1int contentLength = request.getIntHeader("Content-Length");
getDateHeader(String name)
:获取指定请求头的日期值(以毫秒为单位)。
1long expires = request.getDateHeader("Expires");
getRequestURI()
:获取请求的 URI(不包括查询字符串部分)。
1String uri = request.getRequestURI();
getRequestURL()
:获取完整的请求 URL(包括协议、主机名和端口号)。
1StringBuffer url = request.getRequestURL();
getQueryString()
:获取请求中的查询字符串(如果有的话)。
1String queryString = request.getQueryString();
getMethod()
:获取请求的 HTTP 方法(如 GET、POST 等)。
1String method = request.getMethod();
getRemoteAddr()
:获取客户端的 IP 地址。
1String clientIp = request.getRemoteAddr();
getProtocol()
:获取请求使用的协议(如 HTTP/1.1)。
1String protocol = request.getProtocol();
getServerName()
:获取请求的服务器主机名。
1String serverName = request.getServerName();
getServerPort()
:获取请求的服务器端口号。
1int port = request.getServerPort();
getSession()
:获取当前请求的 HTTP 会话(如果不存在,则创建一个新的会话)。
1HttpSession session = request.getSession();
getSession(boolean create)
:如果 create
为 true
,如果没有会话则创建一个新的会话;如果 create
为 false
,则只有在会话已存在时才返回会话。
1HttpSession session = request.getSession(false); // 不创建新会话
getContentType()
:获取请求的内容类型。
1String contentType = request.getContentType();
getCharacterEncoding()
:获取请求的字符编码。
1String encoding = request.getCharacterEncoding();
setCharacterEncoding(String enc)
:设置请求的字符编码。
1request.setCharacterEncoding("UTF-8");
getContentLength()
:获取请求体的内容长度。
1int length = request.getContentLength();
getRequestDispatcher(String path)
:获取请求的调度器,用于请求转发或包含操作。
1RequestDispatcher dispatcher = request.getRequestDispatcher("/nextPage");
sendRedirect(String location)
:发送一个客户端重定向请求,跳转到指定 URL。
1response.sendRedirect("https://www.example.com");
getLocale()
:获取请求的语言环境。
1Locale locale = request.getLocale();
getLocales()
:获取所有的请求语言环境。
1Enumeration<Locale> locales = request.getLocales();
isSecure()
:检查请求是否使用了安全协议(如 HTTPS)。
1boolean isSecure = request.isSecure();
最近更新时间:2024-12-23