1.概述
HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息。
2.方法说明
| getRequestURL() | 返回客户端发出请求时的完整URL。 |
|---|---|
| getRequestURI() | 返回请求行中的参数部分。 |
| getQueryString () | 方法返回请求行中的参数部分(参数名+值) |
| getRemoteHost() | 返回发出请求的客户机的完整主机名。 |
| getRemoteAddr() | 返回发出请求的客户机的IP地址。 |
| getPathInfo() | 返回请求URL中的额外路径信息。额外路径信息是请求URL中的位于Servlet的路径之后和查询参数之前的内容,它以"/"开头。 |
| getRemotePort() | 返回客户机所使用的网络端口号。 |
| getLocalAddr() | 返回WEB服务器的IP地址。 |
| getLocalName() | 返回WEB服务器的主机名。 |
3.举例
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 Servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(request, resp);
}@Override
protected void doPost(HttpServletRequest request, HttpServletResponse resp)
throws ServletException, IOException {
String requestUrl = request.getRequestURL().toString();// 得到请求的URL地址
resp.setCharacterEncoding("UTF-8");// 设置将字符以"UTF-8"编码输出到客户端浏览器
// 通过设置响应头控制浏览器以UTF-8的编码显示数据,如果不加这句话,那么浏览器显示的将是乱码
resp.setHeader("content-type", "text/html;charset=UTF-8");
PrintWriter out = resp.getWriter();
out.write("请求的URL地址:" + requestUrl);
}
}
本文详细介绍了HttpServletRequest对象的功能和使用方法,包括如何获取客户端请求的各种信息,如URL、主机名、IP地址等,并提供了一个示例代码,展示了如何在Servlet中使用这些方法。
6154

被折叠的 条评论
为什么被折叠?



