如何在JSP中从Web应用程序上下文定义src属性

Roh*_*sal 3 jsp absolute-path contextpath

我想在src属性中使用绝对路径,同时在JSP中包含Javascript和CSS文件.

使用相对URL不符合我的目的,类似于下面的那个:

<script type="text/javascript" src="../js/jquery-1.6.4.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

如果我使用绝对URL,

<script type="text/javascript" src="/appName/js/jquery-1.6.4.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

然后我硬编码不适合的Web应用程序名称...

我找到的最佳选择是:

<base href="${pageContext.request.contextPath}"  />
Run Code Online (Sandbox Code Playgroud)

但是,它只适用于href属性 <a href="home.jsp" />

JB *_*zet 6

你得到了解决方案:

<script src="${pageContext.request.contextPath}/js/jquery.js"></script>
<a href="${pageContext.request.contextPath}/home.jsp">Home</a>
Run Code Online (Sandbox Code Playgroud)

或者,使用JSTL:

<script src="<c:url value="/js/jquery.js"/>"></script>
<a href="<c:url value="/home.jsp"/>">Home</a>
Run Code Online (Sandbox Code Playgroud)

JSTL标记具有额外的优点,即如果禁用cookie,它还会将URL添加到URL,以便使用URL重写来跟踪会话.