您的位置:首页 > Web前端 > JavaScript

jsp获取请求路径

2017-04-29 15:25 127 查看
HttpServletRequest获取请求路径  

1、        //Returns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request  

        //  eg.  /ser.do?method=add_pre&type=mad  

        String url = request.getRequestURI();    

    return /ssm/ser.do  

2、        //The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters  

          //eg.      http://localhost:8080/ssm/ser.do?method=add_pre&type=mad  

        StringBuffer url_buffer = request.getRequestURL();  

    return http://localhost:8080/ssm/ser.do  

HttpServletRequest 的这两种方法都只能得到不包含参数的请求url,区别如下: 

1 前者返回相对路径,后者返回完整路径 

2 前者返回string ,后者返回stringbuffer 

要想得到完整请求url可以通过如下方法,getQueryString()得到的是url后面的参数串,和前者相加就是带参数的请求路径了 

Java代码  



    String queryString = request.getQueryString();  

String fullPath = url + queryString;     

// 或者是url_buffer.toString()+queryString;  

即 /ssm/ser.do + method=add_pre&type=mad
 

假定你的工程名称为projects,你在浏览器中输入请求路径:

http://127.0.0.1:8080/projects/pages/newForm.jsp

则执行下面向行代码后打印出如下结果:

1、 System.out.println(request.getContextPath());

打印结果:/projects

 2、System.out.println(request.getServletPath());

打印结果:/pages/newForm.jsp

 3、 System.out.println(request.getRequestURI());

打印结果:/projects/pages/newForm.jsp

 4、 System.out.println(request.getRealPath("/")); 

 JSP servlet API提供了getRealPath(path)方法,返回给定虚拟路径的真实路径,如果转换错误,则返回null。

打印结果:C:\Tomcat5.0\webapps\projects\test
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: