绝对路径和相对路径
注意:使用相对路径可能会有问题,但使用绝对路径肯定没有问题;
注意:绝对路径:相对于当前 WEB 应用的路径,在当前 WEB 应用的所有路径前都添加 contextPath 即可。
JavaWeb中"/"什么时候代表站点的根目录,什么时候代表当前WEB应用的根目录:
"/"代表WEB应用的根路径的情况:http://localhost:8080/contextPath/:
- 请求转发时:request.getRequestDispatcher("/path/b.jsp").forword(request,response);
- web.xml中文件映射的Servlet访问路径:
<servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping>
"/"代表WEB站点的根路径的情况:http://localhost:8080/
- 超链接:
<a href="/TestServlet">xxx</a>
- 表单中的action:
<form action="/login.jsp">
- 做请求重定向的时候:
response.sendRedirect("/a.jsp")
归总:
若"/"需要服务器进行内部解析(servlet容器),则代表的就是WEB应用的根目录。若是交给浏览器了,则"/"代表的就是站点的根目录;若 / 代表的是 WEB 应用的根目录, 就不需要加上 contextPath 了.