Thymeleaf笔记


性能不高,高并发应使用前后段分离

代码自动提示需要thymeleaf插件

基本语法

表达式名字 语法 用途
变量取值 ${…} 获取请求域,session域,对象等值,可以使用+拼接字符串或者用|包裹整个表达式
选择变量 *{…} 获取上下文对象值
消息 #{…} 获取国际化等值
链接 @{…} 生成链接
片段表达式 ~{…} 引入公共页面片段

设置属性值

th:attr=表达式
th:value=表达式

th:要修改的属性名

使用

  1. 引入starer
  2. springboot自动配置
  3. 开发页面

自动配置了SpringTemplateEngine(模板引擎)和ThymeleafViewResolber(视图解析器)

默认文件存放路径在类路径下的/templates/

默认后缀为.html

使用时需要命名空间避免页面报错,没有命名空间也能正常运行

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
</html>

见html标签的xmlns属性

行内写法

[[${...}]]

用于直接显示值

片段引用

th:fragment=""

用于命名片段(也可使用id)

使用

th:replace  替换掉当前标签
th:include  将原标签内部的内容放入
th:insert  插入到标签内部

常用属性

th:text 文本的显示,其值会替换html中指定标签的值
th:utext 支持heml的文本显示
th:value 给属性赋值
th:object 用于设置选定对象
th:if 条件判断,可以和th:unless配合使用
th:switch 选择判断,需要配合th:case使用
th:each 循环迭代
th:href 设置链接地址,需要用@{}

th:each属性状态变量iterStat包含以下数据

  1. index属性,当前迭代索引,从0开始
  2. count属性,当前迭代索引,从1开始
  3. size属性,迭代变量中的元素总数
  4. current属性,每次迭代的iter变量
  5. even/odd布尔属性,当前迭代是偶数还是奇数
  6. first属性,是否是第一个,布尔值
  7. last属性,是否是最后一个,布尔值

配置

可在Springboot的配置文件中配置前缀(文件路径)和后缀,有默认值

spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html

文章作者: WJF
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 WJF !
  目录