HttpServletRequest常用的方法

1、假设客户端地址是:

http://user.cbice.com/cbice/BoardAction.do?operation=doSearch&index=index&boardIndex=boardIndex  

通过request对象得到客户端url方法如下:

1、request.getRequestURL:http://user.cbice.com/cbice/BoardAction.do——–客户请求的url,不包括参数数据。

2、request.getRequestURI:/cbice/BoardAction.do——–将URL的域名和尾随的参数截取掉,剩下的那部分就是URI 。

3、request.getContextPath:/cbice—–即斜杆加工程名。

4、request.getRealPath(“/WEB-INF”):D:\jboss-4.0.2_cbiceportal\server\default.\deploy\user.war\WEB-INF—–即斜杆加工程名。

5、request.getMethod:POST——–HTTP请求的的方法名,默认是GET,也可以指定PUT或POST。

6、request.getScheme: http —返回请求的方案名,如http,ftp,https等。

7、request.getServletPath: /BoardAction.do—工程之后到参数之前的这部分字符串。

8、request.getServerName: user.cbice.com —服务器主机名。

9、request.getServerPort: 80 —服务器上web应用的访问端口。

扫描二维码关注公众号,回复: 3649242 查看本文章

10、request.getRemoteAddr: 192.168.6.8 —发送请求的客户端主机的IP

11、request.getRemoteHost: 192.168.6.8 —发送请求的客户端主机名,如果不确定返回的是IP。

12、request.getQueryString:operation=doSearch&index=index&boardIndex=boardIndex——返回URL上的参数部分的字符串,必须是GET的请求才有效,不然报错.

这里的URL参数中带有中文,是通过字符转码的:String eQuery=new String(request.getQueryString().getBytes(“ISO-8859-1”))

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进制或其他进制的编码。

以上转自:http://shawnfree.iteye.com/blog/459155

进行一下补充:
13、request.getHeaderNames方法 获取header里面的参数名称
14、request.getHeader(string name)方法 根据header参数名称获取值
15、request.getParameterMap方法 获取请求参数对应的map
16、request.getParameter(name)方法 根据请求参数的名称获取对应的值

猜你喜欢

转载自blog.csdn.net/lyt_7cs1dn9/article/details/72730535