HttpServletRequest获取客户端所有参数
HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,通过它可以获得客户的所有参数信息。
获取参数方法
1. 获得客户机信息
getRequestURL //返回客户端发出请求时的完整URL。 getRequestURI //返回请求行中的资源名部分。 getQueryString //返回请求行中的参数部分。 getRemoteAddr //返回发出请求的客户机的IP地址 getRemoteHost //返回发出请求的客户机的完整主机名 getRemotePort //返回客户机所使用的网络端口号 getLocalAddr //返回WEB服务器的IP地址。 getLocalName //返回WEB服务器的主机名 getMethod //得到客户机请求方式
2. 获得客户机请求头
getHead(name) //获取一个指定头字段的值 getHeaders(String name) //返回一个Enumeration集合对象,该集合对象由请求消息中出现的某个指定名称的所有头字段值组成。 getHeaderNames //获取一个包含所有请求头字段的Enumeration对象
3. 获得客户机请求参数(客户端提交的数据)
getParameter(name) //获取指定名称的参数值。这是最为常用的 //之一。 getParameterValues(String name) //获取指定名称参数的所有值数组。它适用于一个参数名对应多个值的情况。如页面表单中的复选框,多选列表提交的值。 getParameterNames() //返回一个包含请求消息中的所有参数名的Enumeration对象。通过遍历这个Enumeration对象,就可以获取请求消息中所有的参数名。 getParameterMap() //返回一个保存了请求消息中的所有参数名和值的Map对象。Map对象的key是字符串类型的参数名,value是这个参数所对应的Object类型的值数组。
例子
//获取所有客户信息 public class CustInfoServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.获取客户端请求的完整URL String url = request.getRequestURL().toString(); System.out.println(url); //2.获取客户端请求的资源部分的名称 String uri = request.getRequestURI().toString(); System.out.println(uri); //3.获取请求行的参数部分 String qStr = request.getQueryString().toString(); System.out.println(qStr); //4.获取请求客户端的ip地址 String ip = request.getRemoteAddr(); System.out.println(ip); //5.获取客户机的请求方式 String method = request.getMethod(); System.out.println(method); //6.获取当前web应用的名称,不是工程名 String webName = request.getContextPath(); System.out.println(webName); //7.给一个请求头名称,获取其值 String host = request.getHeader("Host"); System.out.println(host); //8.获取所有请求头名字组成的枚举 Enumeration<String> enumeration = request.getHeaderNames(); while (enumeration.hasMoreElements()) { String name = (String) enumeration.nextElement(); String values = request.getHeader(name); System.out.println(name+":"+values); } //9.获取post和get两种请求参数 String username = request.getParameter("username"); username = new String(username.getBytes("iso8859-1"),"utf-8"); response.sendRedirect(request.getContextPath()+"/index.jsp"); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。