ich*_*rin 6 freemarker spring-mvc spring-3
我目前正在尝试在我的FreeMarker*.ftl中包含一个css文件.我还在servlet config xml文件中配置了一个资源文件夹.
<mvc:resources mapping="/resources/**" location="/resources/" />
Run Code Online (Sandbox Code Playgroud)
但是如何从FreeMarker模板访问我的css文件?
我只是尝试了以下但没有成功.
<link href="/resources/css/style.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
资源文件夹位于我的spring MVC 3.0应用程序的根目录中.
/web
/resources
/img
/css
/WEB-INF
/templates
Run Code Online (Sandbox Code Playgroud)
我的Servlet根目录定义为:
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/web/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)
我的FreeMarker文件位于templates文件夹中.
我找到了两个解决方案.一个有Spring宏,一个没有我的FreeMarker文件.
最简单的方法是在没有宏的情况下使用它:
<link rel="stylesheet" type="text/css"
href="/springmvc/resources/css/style.css" />
Run Code Online (Sandbox Code Playgroud)
在这个解决方案中,我必须定义完整的路径.
通过使用spring宏,您必须将spring.ftl放置到模板目录中,并将其包含在您希望使用它的每个FreeMarker模板中.
<#import "spring.ftl" as spring />
<html>
<head>
<title>...</title>
<link rel="stylesheet" type="text/css"
href="<@spring.url '/resources/css/style.css'/>"/>
...
Run Code Online (Sandbox Code Playgroud)
Spring宏也可用于本博客提供的其他内容.
| 归档时间: |
|
| 查看次数: |
17096 次 |
| 最近记录: |