使用 Spring 3 MVC 在 FreeMarker 中链接/包含 css
我目前正在尝试在我的 FreeMarker *.ftl 中包含一个 css 文件。我还在 servlet 配置 xml 文件中配置了一个资源文件夹。
<mvc:resources mapping="/resources/**" location="/resources/" />
但是如何从 FreeMarker 模板访问我的 css 文件呢?
我只是尝试了以下但没有成功。
<link href="/resources/css/style.css" rel="stylesheet" type="text/css" />
资源文件夹位于我的 spring MVC 3.0 应用程序的根目录中。
/web
/resources
/img
/css
/WEB-INF
/templates
我的 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>
我的 FreeMarker 文件位于 templates 文件夹中。
I am currently trying to include a css file in my FreeMarker *.ftl. I also have configured a resource folder in my servlet config xml file.
<mvc:resources mapping="/resources/**" location="/resources/" />
But how can I access my css file from my FreeMarker template?
I simply tried the following but without success.
<link href="/resources/css/style.css" rel="stylesheet" type="text/css" />
The resource folder lies in the root of my spring MVC 3.0 application.
/web
/resources
/img
/css
/WEB-INF
/templates
My Servlet root is defined as:
<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>
My FreeMarker files are lying in the templates folder.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我找到了两种解决方案。在我的 FreeMarker 文件中,一种包含 spring 宏,一种不包含 spring 宏。
最简单的方法是在没有宏的情况下使用它:
在此解决方案中,我必须定义完整路径。
通过使用 spring 宏,您必须将 spring.ftl 放入模板目录中,并将其包含在您想要使用的每个 FreeMarker 模板中。
spring 宏还可以用于其他用途此博客< /a> 给出了很好的概述。
I have found two solutions. One with spring macros and one without in my FreeMarker file.
The simplest way is to use it without macros:
In this solution I have to define the complete path.
By using spring macros you have to lay your spring.ftl into your template directory and include it in each FreeMarker template where you like to use it.
The spring macros can also be used for other things this blog gives a good overview.
您可以尝试一下,
在运行时此代码将返回准确的路径。
You can try this,
At run time this code will return exact path.