Thymeleaf 入门

基本项目结构:

Thymeleaf配置:

spring.thymeleaf.mode=LEGACYHTML5
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/static/
spring.thymeleaf.suffix=.html

spring默认的模板映射路径是:src/main/resources/templates 

 ftl路径的hello.html

<!DOCTYPE html>
<html lang="zh-CN"
      xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org">

    <head>
        <title>helloWorld</title>
    </head>

    <body>
        <h1>Hello : <b th:text="${name}">姓名</b></h1>
    </body>
</html>

 TestController:

package com.eshore.ismp.web;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class TestController {
	@RequestMapping(value = "test", method = RequestMethod.GET)
    public String test(Model model) {
        model.addAttribute("name", "MERCY");
        return "/ftl/hello";
    }

}

运行结果:

 

 要注意的点:

spring.thymeleaf.cache要设置为true,以方便开发及时看到页面刷新

springboot直接引入:

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

非springboot项目引入:

<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf</artifactId>
    <version>2.1.4</version>
</dependency>
LEGACYHTML5属性值需要搭配一个额外的库NekoHTML才可用。主要作用是设置Thymeleaf格式检查没这么严格,默认属性值是HTML5

  

  

原文地址:https://www.cnblogs.com/JAYIT/p/10444763.html