区别:
- request.getContextPath():得到项目的名字,即当前应用的根目录。
- request.getRequestURI():返回相对路径
- request.getRequestURL():返回绝对路径
- request.getServletPath():返回Servlet所对应的url-pattern
写一个最简单的Servlet:TestServlet.java
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String ContextPath = request.getContextPath()System.out.println("ContextPath........"+ContextPath)String RequestURI = request.getRequestURI()System.out.println("RequestURI........"+RequestURI)StringBuffer RequestURL = request.getRequestURL()System.out.println("RequestURL........"+RequestURL)String ServletPath = request.getServletPath()System.out.println("ServletPath........"+ServletPath)}
web.xml中的配置如下;
<servlet><servlet-name>TestServlet</servlet-name><servlet-class>test.TestServlet</servlet-class></servlet><servlet-mapping><servlet-name>TestServlet</servlet-name><url-pattern>/Test/TestServlet</url-pattern></servlet-mapping>
在地址栏里输入URL为:
http://localhost:8080/testpath/Test/TestServlet
输出结果为:
其中,testpath为项目名。
ContextPath......../testpath
RequestURI......../testpath/Test/TestServlet
RequestURL........http:
ServletPath......../Test/TestServlet