Spring Boot 是一个非常流行的 Java web 框架,它允许开发人员快速搭建基于 Java 开发的 Web 应用。而 Thymeleaf 是一个非常流行的 Java 模板引擎,它可以帮助我们快速构建 Web 界面。在 Spring Boot 应用中,我们可以使用 Thymeleaf 来构建视图。
具体步骤如下:
步骤一:添加依赖项
我们需要在我们的 Spring Boot 应用中添加依赖项。在 pom.xml
文件中添加以下代码:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
步骤二:创建 Thymeleaf 模板
我们需要创建一个 Thymeleaf 模板,来指定我们的 Web 页面的布局。一个基本的 Thymeleaf 模板如下:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Thymeleaf Demo</title>
</head>
<body>
<h1 th:text="${title}"></h1>
<table>
<thead>
<tr>
<th>Id</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr th:each="person : ${people}">
<td th:text="${person.id}"></td>
<td th:text="${person.name}"></td>
</tr>
</tbody>
</table>
</body>
</html>
在这个模板中,我们使用了 Thymeleaf 的语法来指定变量。th:text
用于指定文字,th:each
用于指定一个遍历。我们也可以使用其他的 Thymeleaf 语法来指定条件语句以及循环语句。
步骤三:创建 Spring Boot 控制器
我们需要创建一个 Spring Boot 控制器来处理 Web 请求。一个基本的控制器如下:
@Controller
public class HomeController {
@GetMapping("/")
public String index(Model model) {
String title = "Thymeleaf Demo";
List<Person> people = Arrays.asList(new Person(1, "John"), new Person(2, "Jane"), new Person(3, "Bill"));
model.addAttribute("title", title);
model.addAttribute("people", people);
return "index";
}
}
在这个控制器中,我们使用了 @GetMapping
来指定请求路径。我们还使用了 Model
来将数据传递给模板。在这个例子中,我们将 title
和 people
变量传递给了模板。
步骤四:运行 Spring Boot 应用
我们需要运行 Spring Boot 应用,以便可以在浏览器中查看我们的 Web 页面。启动程序之后,在浏览器中访问 http://localhost:8080/
即可查看我们的 Web 页面。
示例1:动态显示当前时间
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Thymeleaf Demo</title>
</head>
<body>
<h1 th:text="${title}"></h1>
<p>当前时间是:<span th:text="${now}"></span></p>
</body>
</html>
@Controller
public class HomeController {
@GetMapping("/")
public String index(Model model) {
String title = "Thymeleaf Demo";
LocalDateTime now = LocalDateTime.now();
model.addAttribute("title", title);
model.addAttribute("now", now);
return "index";
}
}
示例2:动态加载图片
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Thymeleaf Demo</title>
</head>
<body>
<h1 th:text="${title}"></h1>
<img th:src="${image}" alt="image">
</body>
</html>
@Controller
public class HomeController {
@GetMapping("/")
public String index(Model model) {
String title = "Thymeleaf Demo";
String imageUrl = "https://example.com/image.jpg";
model.addAttribute("title", title);
model.addAttribute("image", imageUrl);
return "index";
}
}
这样,我们就可以在我们的 Spring Boot 应用中使用 Thymeleaf 模板了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot中使用Thymeleaf模板详情 - Python技术站