jsp 页面base标签作用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Zllvincent/article/details/82944247

<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℃ 创作更优秀的博文

猜你喜欢

转载自blog.csdn.net/Zllvincent/article/details/82944247
今日推荐