您的位置:首页 > 理论基础 > 计算机网络

HttpServletRequest对象方法的用法

2016-03-09 20:51 686 查看
1. 获得客户机信息
    getRequestURL方法返回客户端发出请求时的完整URL。
    getRequestURI方法返回请求行中的资源名部分。
    getQueryString 方法返回请求行中的参数部分。
    getRemoteAddr方法返回发出请求的客户机的IP地址 
    getRemoteHost方法返回发出请求的客户机的完整主机名
    getRemotePort方法返回客户机所使用的网络端口号
    getLocalAddr方法返回WEB服务器的IP地址。
    getLocalName方法返回WEB服务器的主机名 
    getMethod得到客户机请求方式
 2.获得客户机请求头 
    getHeader(string name)方法 
    getHeaders(String name)方法 
    getHeaderNames方法 
 3. 获得客户机请求参数(客户端提交的数据)
    getParameter(name)方法
    getParameterValues(String name)方法
    getParameterNames方法 
    getParameterMap方法

例子程序:

[java] view plain
copy

public void doGet(HttpServletRequest request, HttpServletResponse response)  
        throws ServletException, IOException {  
        System.out.println("getRequestURL: "+request.getRequestURL());  
        System.out.println("getRequestURI: "+request.getRequestURI());  
        System.out.println("getQueryString: "+request.getQueryString());  
        System.out.println("getRemoteAddr: "+request.getRemoteAddr());  
        System.out.println("getRemoteHost: "+request.getRemoteHost());  
        System.out.println("getRemotePort: "+request.getRemotePort());  
        System.out.println("getRemoteUser: "+request.getRemoteUser());  
        System.out.println("getLocalAddr: "+request.getLocalAddr());  
        System.out.println("getLocalName: "+request.getLocalName());  
        System.out.println("getLocalPort: "+request.getLocalPort());  
        System.out.println("getMethod: "+request.getMethod());  
        System.out.println("-------request.getParamterMap()-------");  
        //得到请求的参数Map,注意map的value是String数组类型  
        Map map = request.getParameterMap();  
        Set<String> keySet = map.keySet();  
        for (String key : keySet) {  
        String[] values = (String[]) map.get(key);  
        for (String value : values) {  
            System.out.println(key+"="+value);  
        }  
     }  
        System.out.println("--------request.getHeader()--------");  
        //得到请求头的name集合  
        Enumeration<String> em = request.getHeaderNames();  
        while (em.hasMoreElements()) {  
        String name = (String) em.nextElement();  
        String value = request.getHeader(name);  
        System.out.println(name+"="+value);  
    }  
          
}  
浏览器上地址栏:http://localhost:8080/RequestAndResponse/requestmethod?name=sunjob&password=123456&password=haha

控制台输出:

[plain] view plain
copy

getRequestURL: http://localhost:8080/RequestAndResponse/requestmethod  
getRequestURI: /RequestAndResponse/requestmethod  
getQueryString: name=sunjob&password=123456&password=haha  
getRemoteAddr: 127.0.0.1  
getRemoteHost: 127.0.0.1  
getRemotePort: 2374  
getRemoteUser: null  
getLocalAddr: 127.0.0.1  
getLocalName: localhost  
getLocalPort: 8080  
getMethod: GET  
-------request.getParamterMap()-------  
name=sunjob  
password=123456  
password=haha  
--------request.getHeader()--------  
host=localhost:8080  
user-agent=Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0  
accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8  
accept-language=zh-cn,en-us;q=0.8,zh;q=0.5,en;q=0.3  
accept-encoding=gzip, deflate  
connection=keep-alive  
cache-control=max-age=0  

Baidu Button BEGIN

Baidu Button END 172.16.140.12 Baidu Button BEGIN Baidu Button END
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: