页面中,访问地址加“/”和不加“/”的区别
在页面中,访问地址不加“/”
访问路径:http://localhost:8080/springMVC_01/index.jsp
路径:http://localhost:8080/springMVC/
资源:index.jsp
在index.jsp发起请求<a href="test/doSome.do">点击发送请求</a>
,
此时的状态栏地址为http://localhost:8080/springMVC_01/test/doSome.do
即http://localhost:8080/springMVC/
+test/doSome.do
.
此时
路径:http://localhost:8080/springMVC_01/test/
资源: doSome.do
如果再次访问 test/doSome.do
地址栏变为:http://localhost:8080/springMVC_01/test/test/doSome.do
.
解决方案:
- 访问地址修改为 ->
<a href="${pageContext.request.contextPath}/test/doSome.do">
- 加入base标签 ->
<base href="http://localhost:8080/springMVC_01/" />
或者
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String basePath = request.getScheme() + "://" +
request.getServerName() + ":" + request.getServerPort() +
request.getContextPath() + "/";
%>
<html>
<head>
<title>Title</title>
<base href="<%=basePath%>" />
</head>
<body>
<p><a href="user/some.do">发起请求</a> </p>
</body>
</html>
在页面中,访问地址加“/”
访问路径:http://loalhost:8080/springMVC/index.jsp
路径:http://localhost:8080/springMVC/
资源:index.jsp
在index.jsp发起请求<a href="/test/doSome.do">点击发送请求</a>
,
此时的状态栏地址为http://localhost:8080/test/doSome.do
即http://localhost:8080
+/test/doSome.do
.