HttpServletRequest接口中常用方法

     HttpServletRequest接口继承于ServletRequest接口。HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,http请求头中的所有信息都封装在这个对象中,通过HttpServletRequest提供的方法可以获得客户端请求的所有信息。
    例如,客户端请求的地址是:http://www.xinjun.com/about/list?name=zhang&index=4565。HttpServletRequest常用方法如下:
  1. getHeader(string name)方法:根据header参数名称获取值 ;
  2. getHeaderNames()方法:获取header里面的参数名称;
  3. getParameterMap()方法:获取请求参数对应的map ;
  4. getParameter(name)方法:根据请求参数的名称获取对应的值;
  5. getRemoteAddr()方法:发送请求的客户端主机的IP;
  6. getScheme()方法:获取正确的协议,如http协议;
  7. getServerName()方法:服务器主机名;
  8. getServerPort()方法:服务器上web应用的访问端口;
  9. getContextPath()方法:获取域名后的斜杆加工程名,也就是上面例子中的/about部分;
  10. getRemoteAddr()方法:发送请求的客户端主机的IP;
  11. getRequestURI()方法:将URL的域名和尾随的参数截取掉,剩下的那部分就是URI,即/about/list部分;
  12. getRequestURL()方法:客户请求的url,不包括参数数据;即例子中的http://www.xinjun.com/about/list部分;
  13. getMethod()方法:HTTP请求的的方法名,默认是GET,也可以指定PUT或POST;
  14. getRealPath(“/WEB-INF”)方法:获取虚拟目录的硬盘实际路径;

【补充】

       response的响应内容:response.setContentType(“text/html;charset=gbk”),才可以正常显示页面中文。 如果需要获得参数则用String status = new String(request.getParameter(“username”).trim().getBytes(), “GBK”);获得其内容。 另外一种方法是:用String eQuery=URLEncoder.encode(“中文”,”GBK”);按照参数编码格式进行转码,在页面中通过request.getParamter(“eQuery”)得到的参数是中文,但是在url中显示的是16进制或其他进制的编码。

猜你喜欢

转载自blog.csdn.net/u013089490/article/details/83654899