SpringBoot整合Thymeleaf详解
需积分: 0 157 浏览量
更新于2024-08-03
收藏 5KB TXT 举报
"本文将介绍如何在Spring Boot项目中整合Thymeleaf模板引擎,包括Thymeleaf的各种表达式、链接、消息、代码块以及属性的使用方式。"
Thymeleaf是一个流行的Java模板引擎,它允许开发者在HTML中编写可执行的代码,用于Web应用的视图层。在Spring Boot中整合Thymeleaf可以方便地进行动态页面渲染。以下是对Thymeleaf关键特性的详细解释:
1. 表达式:
- 变量表达式 `${}`:通过`${beginTime}`可以在页面上获取Controller传递到ModelMap中的`begin`变量。
- 对象属性和方法表达式 `${@dict.getType('work_finished')}`:访问Spring容器中的bean对象及其属性和方法。
- 内置对象访问 `${session.userName}`:可以使用`ctx`,`vars`,`locale`,`request`,`response`,`session`,`servletContext`等内置对象。
- 内置方法 `${#dates.format(user.birthday,'dd/MMM/yyyyHH:mm')}`:使用如`dates`,`numbers`,`strings`,`objects`,`arrays`,`lists`,`sets`,`maps`等内置方法,此处示例中格式化日期。
2. 链接表达式 `@{/xxxx}`:
- 无参链接:如`@{/xxxx}`编译后直接生成路径。
- 有参链接:如`@{/xxxx(k1=v1,k2=v2)}`编译后形成带有参数的URL。
- 本地资源引入:`@{/js/bootstrap.min.js}`会从`static`文件夹下加载资源。
- 外部资源引入:`@{/webjars/资源在jar包中的路径}`用于引入jar包内的静态资源。
3. 消息表达式 `#{}`:用于国际化的消息表达,可以根据不同的语言环境展示相应的文本。
4. 代码块表达式 `~{}`:在HTML中定义代码块,可以包含条件语句、循环结构等。
5. 选择变量表达式 `*{}`:根据条件选择不同的变量。
6. 文本内联 `[[]]` 和 `[()]`:
- `[[]]` 以纯文本形式显示,不解析内容里的HTML标签,等价于`th:text`。
- `[()]` 把内容当成HTML来解析并展示,等价于`th:utext`。
7. Thymeleaf属性:
- th:text:设置元素的文本内容,如`<div class="form-control-static" th:text="${user.userCode}"></div>`编译后显示`user.userCode`。
- th:src, th:href, th:value:分别用于设置元素的`src`,`href`和`value`属性,如`<script th:src="@{/js/boo}"`。
通过以上这些特性,Thymeleaf能够将动态数据与静态HTML结合,提供丰富的功能来创建交互式的Web界面。在Spring Boot中整合Thymeleaf,可以极大地提升开发效率,简化前端逻辑,并且便于维护。记得在使用Thymeleaf时,确保已正确配置Thymeleaf的相关依赖和设置,以便于其与Spring Boot无缝集成。
2017-02-17 上传
2019-01-02 上传
2019-04-12 上传
2020-02-05 上传
2019-01-23 上传
2023-05-11 上传
2024-07-09 上传
2018-04-04 上传
2020-08-25 上传
speedspeedfast
- 粉丝: 0
- 资源: 1
最新资源
- 单片机串口通信仿真与代码实现详解
- LVGL GUI-Guider工具:设计并仿真LVGL界面
- Unity3D魔幻风格游戏UI界面与按钮图标素材详解
- MFC VC++实现串口温度数据显示源代码分析
- JEE培训项目:jee-todolist深度解析
- 74LS138译码器在单片机应用中的实现方法
- Android平台的动物象棋游戏应用开发
- C++系统测试项目:毕业设计与课程实践指南
- WZYAVPlayer:一个适用于iOS的视频播放控件
- ASP实现校园学生信息在线管理系统设计与实践
- 使用node-webkit和AngularJS打造跨平台桌面应用
- C#实现递归绘制圆形的探索
- C++语言项目开发:烟花效果动画实现
- 高效子网掩码计算器:网络工具中的必备应用
- 用Django构建个人博客网站的学习之旅
- SpringBoot微服务搭建与Spring Cloud实践