将Html模板转换为Thymeleaf模板

时间:2016-12-21 18:43:28

标签: html css spring-mvc thymeleaf template-engine

我正在尝试将我的html5模板转换为我的spring项目。在这个项目中,我使用百里香叶模板。为了转换,我将所有脚本src更改为th:src或所有样式文件(css文件)th:href等。但设计似乎是错误的。

<script th:src="@{/resources/js/jquery.min.js}" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<!-- Fonts -->
<link th:href="@{http://fonts.googleapis.com/css?family=Ubuntu:400,400italic,700}" rel='stylesheet' type='text/css'/>
<link th:href="@{http://fonts.googleapis.com/css?family=Pacifico}" href='http://fonts.googleapis.com/css?family=Pacifico' rel='stylesheet' type='text/css'/>
<link th:href="@{/resources/font-awesome/css/font-awesome.css}" href='font-awesome/css/font-awesome.css' rel="stylesheet" type="text/css"/>
<!-- Bootstrap -->
<link th:href="@{/resources/bootstrap/css/bootstrap.min.css}" href="bootstrap/css/bootstrap.min.css" rel="stylesheet"/>

<!-- Main Style -->
<link rel="stylesheet" th:href="@{/resources/style.css}" href="style.css" />

<!-- owl Style -->
<link rel="stylesheet" th:href="@{/resources/css/owl.carousel.css}" href="css/owl.carousel.css" />
<link rel="stylesheet" th:href="@{/resources/css/owl.transitions.css}" href="css/owl.transitions.css" />

                   

<!-- rating -->
<script th:src="@{/resources/js/rate/jquery.raty.js}" src="js/rate/jquery.raty.js"></script>
<script th:src="@{/resources/js/labs.js}" src="js/labs.js" type="text/javascript"></script>

<!-- Add mousewheel plugin (this is optional) -->
<script type="text/javascript" th:src="@{/resources/js/product/lib/jquery.mousewheel-3.0.6.pack.js}" src="js/product/lib/jquery.mousewheel-3.0.6.pack.js"></script>

<!-- fancybox -->
<script type="text/javascript" th:src="@{/resources/js/product/jquery.fancybox.js?v=2.1.5}" src="js/product/jquery.fancybox.js?v=2.1.5"></script>

<!-- custom js -->
<script th:src="@{/resources/js/shop.js}" src="js/shop.js"></script>

这些是转换后的标签。而且当我执行我的页面时,我得到如下所示的异常。我的bootstrap / img文件夹中不存在此图像,也不存在于模板文件夹中。但模板似乎没有Thymeleaf。

jquery.fancybox.js?v=2.1.5:1994 GET http://localhost:8080/resources/bootstrap/img/glyphicons-halflings.png 404 (Not Found)

1 个答案:

答案 0 :(得分:0)

使用&#34; http://&#34;前缀,无需使用th:href。 对于那些内部站点资源,请删除&#34; / resources&#34 ;, Spring Framework将默认添加它。

以下是来自Spring的文档供您参考。 默认情况下,Spring将从名为/ static(或/ public或/的目录)提供静态内容 资源或/ META-INF / resources)在类路径中或从ServletContext的根目录。 它使用Spring MVC中的ResourceHttpRequestHandler,因此您可以通过修改该行为 添加自己的WebMvcConfigurerAdapter并覆盖addResourceHandlers方法。