Thymeleaf模板
Thymeleaf模板使用java开发的模板技术,在服务器端运行,把处理后的数据发送给浏览器,处理视图层的工作。
Thymeleaf对网络环境不存在严格的要求,既能用于Web环境下,也能用于非 Web环境下。在非 Web环境下,他能直接显示模板上的静态数据;在Web环境下,它能像Jsp一样从后台接收数据并替换掉模板上的静态数据。它是基于HTML的,以HTML标签为载体,Thymeleaf要寄托在HTML标签下实现。
第一个Thymeleaf模板例子
创建一个新的Springboot项目,选择依赖
创建controller并编写ThymeleafController
package com.ys.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import javax.servlet.http.HttpServletRequest;
@Controller
public class ThymeleafController {
@GetMapping("/hello")
public String hello(HttpServletRequest request, Model model){
// 添加数据到Request作用域,模板引擎可以从Request中获取数据
request.setAttribute("data","2022-07-28");
// 使用model对象存放数据
model.addAttribute("my","zangsan");
// 指定视图(模板引用使用的页面(html))
// 逻辑名称
return "hello";
}
}
在Templates目录下创建hello.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hello.html</title>
</head>
<body>
<h3>使用Thymeleaf模板引擎</h3>
<!--使用th:text="${data},使用data的数据替换p标签的数据(显示数据)-->
<!--提示无法解析data也是可以正常运行-->
<!--/*@thymesVar id="data" type="com.ys.controller.ThymeleafController"*/-->
<p th:text="${data}">显示数据</p>
<!--/*@thymesVar id="my" type="com.ys.controller.ThymeleafController"*/-->
<p th:text="${my}">显示数据</p>
</body>
</html>
运行结果