我们在jsp ,html中使用的地址, 也就是在前端页面中的地址,一般都是相对地址,但是在浏览器进行访问的时候肯定用的是绝对地址。
不加"/"的情况
我们访问的地址是正常的,页面也是可以正常访问的
当你加上"/"之后
这个时候我们再重新运行项目会怎么样呢?
我们发现,项目的访问地址这里发生了变化,加上 “/” 之后,访问地址中的项目名字缺失了,也就导致发生404错误。
解决办法:
第一种方法,也是最简单最快速的方法,直接把前面的 “/” 去掉就可以了
第二种方法:在 “/” 前面加入${pageContext.request.contextPath}
,加上之后就能正常访问地址了
第三种方法,如果访问的地址较多的话,在每一个地址前面都加上${pageContext.request.contextPath}
会显得代码很啰嗦,这个时候可以在 jsp 页面的最上面加上:
<%
String basePath = request.getScheme() + "://" +
request.getServerName() + ":" + request.getServerPort() +
request.getContextPath() + "/";
%>
这样就可以用basePath
来代替${pageContext.request.contextPath}
了。
总结
访问地址前如果不加 “/” 的话,访问的是项目下的页面
加上 “/” 之后,访问的是根地址下的页面
在实际开发中,要根据项目需求来进行取舍。