spring mvc 与 thymeleaf 结合的核心是配置视图解析器,controller 返回逻辑视图名(如"user/list"),thymeleaf 自动渲染 src/main/resources/templates/user/list.html;需引入 spring-boot-starter-web 和 spring-boot-starter-thymeleaf 依赖,模板中用 th:text、th:each 等属性绑定数据。

Spring MVC 与 Thymeleaf 结合非常自然,核心在于配置好视图解析器,并在 Controller 中返回逻辑视图名,Thymeleaf 自动渲染 HTML 模板。
添加依赖(Maven)
确保项目引入 Spring Boot Web 和 Thymeleaf 启动器(推荐使用 Spring Boot):
默认模板位置与命名规则
Thymeleaf 默认从 src/main/resources/templates/ 加载 HTML 模板文件(注意不是 static 或 views)。
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
- Controller 返回
"user/list"→ 对应templates/user/list.html - 文件必须是
.html后缀,且需符合 XML 格式(闭合标签、引号等) - 模板中通过
th:属性绑定数据,例如th:text="${user.name}"
Controller 返回模型和视图
无需手动创建 ModelAndView,直接返回 String 视图名,并用 @ModelAttribute 或方法参数传入数据:
public String listUsers(Model model) {
List
model.addAttribute("users", users);
return "user/list"; // 解析为 templates/user/list.html
}
也可用 ModelMap 或 Map 替代 Model,效果一致。
在 HTML 模板中使用 Thymeleaf 表达式
基础写法示例(templates/user/list.html):
用户列表
张三
-
th:each实现循环,类似 JSTL 的c:forEach -
${...}访问后端传来的变量,支持属性导航、方法调用(如${user.createdAt.format('yyyy-MM-dd')}) -
th:if、th:unless、th:switch支持条件渲染
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










