Spring Boot 2.X 使用 Thymeleaf 模板引擎

在介绍 Thymeleaf 之前,首先要了解下 Spring Boot 怎么返回 String、resources/templates 和 resources/static 目录下的文件。

1. 返回 String

返回 String,用注解是 @RestController,它是由 @Controller 和 @ResponseBody 两个注解组合而成的。

例如:

@RestController
@RequestMapping("/rest/controller")
public class ReturnStringController {

    @RequestMapping("/")
    public String getIndex() {
        return "restController";
    }

    @RequestMapping("/page")
    public String getPage() {
        return "restController page";
    }
}

Spring Boot 2.X 使用 Thymeleaf 模板引擎

2. 返回 resources/templates 下的模板文件

返回模板,用的注解是 @Controller

Spring Boot 2.X 使用 Thymeleaf 模板引擎

3. 返回 resources/static 下的静态文件

返回静态文件最简单了,直接在 resources/static 添加文件即可

例如:新建一个 resources/static/public/test.html
然后在浏览器输入 localhost:8080/public/test.html 就可以访问该网页了。

@Controller 与 @RestController 的区别

在 POJO(普通Java对象,Plain Old Java Object)类定义处标注 @Controller,再通过 <content:component-scan /…> 扫描相应的类包,即可使 POJO 类成为一个能处理HTTP请求的控制器。
使用 @RequestMapping 后,返回值通常解析为跳转路径。
加上 @Responsebody 后,返回结果直接写入HTTP response body中,不会被解析为跳转路径。

未完待续