Thymeleaf本地@ {}网址不起作用

时间:2018-07-13 17:11:54

标签: spring spring-boot thymeleaf

我正在将百里香叶与springboot一起使用,我提到的带有本地URL的所有链接均不起作用。我什至在浏览器上检查了网络选项卡,所有css和js资源都正确加载,但是不起作用。以下是一些代码:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head th:fragment="common-header">
<title>Fullstack app skeleton</title>
<!-- Bootstrap core CSS -->
<link th:href="@{/webjars/bootstrap/3.3.6/css/bootstrap.min.css}"
      rel="stylesheet"></link>

<!-- Custom styles for this template -->
<link type="text/css" th:href="@{/css/styles.css}" rel="stylesheet"> 
</link>
</head>
<div th:fragment="before-body-scripts">
<script th:src="@{/webjars/jquery/2.1.4/jquery.min.js}"></script> 
<script th:src="@{/webjars/bootstrap/3.3.6/js/bootstrap.min.js}"> 
</script>
<script th:src="@{/js/fullstackapp.js}"></script>
</div>
</html>

此外,我检查了pom.xml并正确加载了所有依赖项。在上面的代码中,当我提到绝对URL(https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css)时,所有引导程序功能都起作用,但是当我使用对本地jar的引用时,它就没有作用。有人可以提出可能的原因吗?

1 个答案:

答案 0 :(得分:0)

我正在使用一个.java文件来映射BootstrapJquery

@Configuration
public class MvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/bootstrap/**")
            .addResourceLocations("classpath:/META-INF/resources/webjars/bootstrap/4.0.0/");
        registry.addResourceHandler("/resources/jquery/**")
            .addResourceLocations("classpath:/META-INF/resources/webjars/jquery/3.0.0/");
    }
}

这是我的html代码:

<link th:href="@{/resources/bootstrap/css/bootstrap.min.css}" rel="stylesheet"/>
<script th:src="@{/resources/jquery/jquery.min.js}"></script>
<script th:src="@{/resources/bootstrap/js/bootstrap.js}"></script>

希望对您有帮助