例如,通过/resources/**访问根目录下public-resources文件夹下的资源,标签可以像下边这么写:
<spring:eval expression="@applicationProps['application.version']" var="applicationVersion"/>
<spring:url value="/resources-{applicationVersion}" var="resourceUrl">
<spring:param name="applicationVersion" value="${applicationVersion}"/>
</spring:url>
<script src="${resourceUrl}/dojo/dojo.js" type="text/javascript"> </script>
<mvc:resources mapping="/resources/**" location="/public-resources/"/>
设置一年的缓存时间以最大化的利用浏览器缓存和减少服务器压力:
<mvc:resources mapping="/resources/**" location="/public-resources/" cache-period="31556926"/>
<mvc:resources mapping="/resources/**" location="/, classpath:/META-INF/public-web-resources/"/>
使用util:properties标签把properties文件的内容提供给SpEL
<util:properties id="applicationProps" location="/WEB-INF/spring/application.properties"/>
通过SpEL得到应用的版本,可以把他加入到用到的resources标签:
<mvc:resources mapping="/resources-#{applicationProps['application.version']}/**" location="/public-resources/">
<spring:eval expression="@applicationProps['application.version']" var="applicationVersion"/>
<spring:url value="/resources-{applicationVersion}" var="resourceUrl">
<spring:param name="applicationVersion" value="${applicationVersion}"/>
</spring:url>
<script src="${resourceUrl}/dojo/dojo.js" type="text/javascript"> </script>