摘要 request.getRequestURI() 、request.getRequestURL() 、request.getContextPath()、request.getServletPath()区别

request.getRequestURI() 、request.getRequestURL() 、request.getContextPath()、request.getServletPath()区别

 

request.getRequestURI() /jqueryWeb/resources/request.jsp
request.getRequestURL() http://localhost:8080/jqueryWeb/resources/request.jsp
request.getContextPath()/jqueryWeb
request.getServletPath()/resources/request.jsp

注: resources为WebContext下的目录名
jqueryWeb 为工程名 
-----------------------------------------------------
<%=request.getRequestURI() %><br/>
<%=request.getRequestURL() %><br/>
<%=request.getContextPath()%><br/>
<%=request.getServletPath() %><br/>
<%=request.getPathInfo() %><br/>
结果:
/test-struts.jsp
http://127.0.0.1:8080/test-struts.jsp
/test-struts.jsp
null
配置:
<action name="test" class="testStrutsAction" method="test"> 
   <result>/test-struts.jsp</result>
</action>

             

假定你的web application 名称为news,你在浏览器中输入请求路径:

 

http://localhost:8080/news/main/list.jsp

 

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

 

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

 

打印结果:/news

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

 

打印结果:/main/list.JSP

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

 

打印结果:/news/main/list.JSp

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

 

打印结果:F:\tomcat 6.0\webapps\news\test