这是我用Thymeleaf设置的Spring Boot .
的pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
ThymeleafConfig
@Configuration
public class ThymeleafConfig {
@Bean
public ServletContextTemplateResolver templateResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("/templates/");
resolver.setSuffix(".html");
resolver.setTemplateMode("LEGACYHTML5");
resolver.setOrder(1);
return resolver;
}
}
调节器
@RestController
public class WebController {
@RequestMapping("")
public String index(){
return "index";
}
}
Index.html位于src / main / resources / templates中 .
但是当调用localhost:8080时,只会呈现“index”字符串 . 未获取Index.html . 可能是什么问题呢?
1 回答
你正在使用
@RestController
.@RestController
bean的所有处理程序方法都像@ResponseBody
一样注释,即 . 他们返回的对象直接根据某些HttpMessageConverter
写入响应 .如果您不想要这种行为,请将
@RestController
更改为@Controller
.