Spring MVC绝对URL问题


问题内容

背景

我正在开发一个应用程序(使用Spring MVC),其基本路径为:

http://localhost:8080/myapplication/

我有一个/css/style.cssabsolute path在JSP中引用的样式表:

<link rel="stylesheet" href="/css/style.css" type="text/css" media="screen, projection">

问题

样式表永远不会加载到浏览器中。当我通过浏览器的 视图源 功能跟踪样式表链接时,该链接似乎是:

http://localhost:8080/css/style.css

哪个应该是:

http://localhost:8080/myapplication/css/style.css

使用时,我曾使用html:rewrite标签来解决此问题Struts。是否有任何等效的标签/技术Spring MVC

谢谢你的时间。


问题答案:

使用JSTL c:url标记。

<c:url value="/css/style.css" var="url" />
<link rel="stylesheet" href="${url}" type="text/css" media="screen, projection">

您还可以使用pageContext为上下文路径添加前缀。

<link rel="stylesheet" href="${pageContext.request.contextPath}/css/style.css" type="text/css" media="screen, projection">