加斜杠是绝对路径,基于http://localhost:8080/
不加斜杠是相对路径,基于当前文件,如果设置了base则基于base
<%
String path = request.getContextPath();
// 获得项目完全路径(假设你的项目叫MyApp,那么获得到的地址就是 http://localhost:8080/MyApp/):
String basePath =
request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
在head部分加上代码:
<base href=" <%=basePath%>">
在servlet的网页跳转如果加斜杠基于的是http://localhost:8080/,如果不加斜杠是基于当前的请求路径的相对路径
静态资源的访问路径是通过url可以访问到路径
然后基于这些绝对路径或者相对路径之后的东西就是所要引用的路径
jsp加斜杠与不加斜杠的区别:
加斜杠是绝对路径http://localhost:8080/,这里少了项目名称,因此需要加上,不然url-pattern匹配不上
不加斜杠是相对路径,当前文件的路径
web.xml中url-pattern匹配的是http://localhost:8080/项目名 之后的东西