我正在尝试在http://www.thymeleaf.org/doc/articles/springmvcaccessdata.html上关注本教程,以了解如何向Thymeleaf模板发送回复。但我得到这个错误:找不到模板位置:classpath:/ templates /(请添加一些模板或检查你的Thymeleaf配置)
我将message.html文件放在Other Sources目录中,并放在<default package>
下的src / main / resources中。
所以结构如下:
SomeProject
- 其他来源
--src /主/资源
--- <default package>
---- message.html
我想知道为什么它显示在<default package>
下但不在<template>
下?可能是问题吗?如果是这样我怎么能改变它?我正在使用netbeans和maven。有什么想法吗?这些是我在pom.xml中的依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
在控制器中我有
@RequestMapping(value = "message", method = RequestMethod.GET)
public String messages(Model model) {
model.addAttribute("messages", messageRepository.findAll());
return "message";
}
在视图中:
<ul th:each="message : ${messages}">
<li th:text="${message.id}">1</li>
<li><a href="#" th:text="${message.title}">Title ...</a></li>
<li th:text="${message.text}">Text ...</li>
</ul>
答案 0 :(得分:8)
Spring Boot包含对百万美元模板引擎的自动配置支持,您的模板将自动从src / main / resources / templates中获取。
如果您自定义模板位置,请使用Spring Boot中提供的百万美元属性配置。
spring.thymeleaf.check-template = true#在渲染之前检查模板是否存在。
spring.thymeleaf.check-template-location = true#检查模板位置是否存在。
spring.thymeleaf.enabled = true#启用MVC Thymeleaf视图解析。
spring.thymeleaf.prefix = classpath:/ templates /#在构建URL时前缀为视图名称的前缀。
spring.thymeleaf.suffix = .html#在构建网址时附加到视图名称的后缀。
答案 1 :(得分:1)
答案 2 :(得分:1)
对于放在文件夹src / main / resources / templates /中的Thymeleaf模板文件,它也适用于您,也可以查看http://www.mkyong.com/spring-boot/spring-boot-hello-world-example-thymeleaf/。希望你会发现用弹簧靴启动百里香很容易。
答案 3 :(得分:0)
这里有两件事: 1.如果您使用的是Maven,我假设没有对文件夹名称进行自定义。然后文件夹名称应该是src而不是source。 2.重命名文件夹后,将模板移到&#39;模板中。在src / resources里面的文件夹应该运行正常。
答案 4 :(得分:0)