<base>
标签为页面上的所有链接规定默认地址或默认目标。浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL,构成完整的请求地址。
<base>
标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的 URL(<base href=value >
href属性指定的地址) 来解析所有的相对 URL。这其中包括 <a>、<img>、<link>、<form>
标签中的 URL。
1.jsp中使用相对路径
1-1:书写方便简洁
1-2:项目层次结构较深时有较多的相对访问路径(…/…/),非常不直观,如下图
此时我们在main.jsp 中访问pic08.jpg 时,main.jsp 中的相对路径写法为如下图:
如果项目层级更多,这将是多么痛苦的事
2.使用绝对路径
2-1:书写冗余,访问地址过长
2-2:需要事先知道项目部署的地址
我们还能愉快的写代码吗?
3.<base>
标签轻松解决
3.1添加jsp 脚本
<%
String base = request.getContextPath()+"/";
String url = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+base;
%>
3.2<head>标签中添加<base>标签
<base href="<%=url%>">
添加完成如下图结构,此时访问图片资源即可直接书写相对路径(据说MyEclipse 会自动给创建的jsp 文件添加类似的模板,很遗憾笔者使用的是Eclipse)
至此,项目层级无论有多深,都非常清晰明了!
如果对您有帮助,点个赞支持 奶茶37.2℃ 创作更优秀的博文