区别:
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