JSP获取项目根路径与base标签的用法

JSP获取项目根路径与base标签的用法

获取根路径

  • 第一种:使用EL表达式

    通过怕geContext获取request对象在获取contextPath属性,如果你的项目名称为Book,则下面输出为”/Book”。

    ${pageContext.request.contextPath }
  • 第二种:使用JSP表达式

    使用隐式对象reqeuset,返回值同上。

    <%=request.getContextPath()%>

base标签的用法

标签必须位于 head 元素内部。

定义和用法

标签为页面上的所有链接规定默认地址或默认目标。

通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白。

使用 标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的基本 URL 来解析所有的相对 URL。这其中包括 a、img, link、form 标签中的 URL。

属性
  • href:此为必需的属性,值为URL,规定页面中所有相对链接的基准 URL,一般可以为根路径。

  • target:此为可选属性,值可以为(_blank,_parent,_self,_top,framename),描述在何处打开页面中所有的链接。

用法示例

我们的工程名为Book,图片在根目录的img文件目录下。

下例我们使用EL表达式获取根路径,并在最后以斜杠结尾(重要,需要加斜杠,也不能在img标签的src属性值前面加斜杠,这样将该条路径与该工程无关,如果下面的src=”/smile.gif”,则该图片的地址为,http://localhost:8080/smile.gif,与根路径无关了),因此图片路径为”/Book/img/smile.gif”,地址为http://localhost:8080/Book/img/smile.gif。

或者使用JSP表达式获取:

<%=request.getContextPath()+"/img/" %>

示例:

<html>
<head>
<base href="${pageContext.request.contextPath }/img/" target="_blank" />
head>

<body>
<img src="smile.gif" /><br />
<p>请注意,我们已经为图像规定了一个相对地址。由于我们已经在 head 部分规定了一个基准 URL,浏览器将在如下地址寻找图片:p>
<p>"http://www.w3school.com.cn/i/eg_smile.gif"p>

<br /><br />

<p><a href="http://www.w3school.com.cn">W3Schoola>p>
<p>请注意,链接会在新窗口中打开,即使链接中没有 target="_blank" 属性。这是因为 base 元素的 target 属性已经被设置为 "_blank" 了。p>

body>
html>

你可能感兴趣的:(JSP)