1、标准变量表达式:
  thymeleaf中的变量表达式使用${变量名}的方式获取其中的数据
  th:text="" 是thymeleaf的一个属性,用于文本的显示
  如:<span th:text="${user.name}">X</span>
2、选择变量表达式
  也叫星号表达式,使用th:object属性来绑定对象
  <div th:object="${user}"> ---------------绑定对象
  <p>nick:<span th:text="*{nick}">张</span></p>----------nick为user的属性*代表user
  </div>
3、url表达式
  语法:@{..}
  url表达式可用于<script src="..."> 、<link href=".."> 、<a href="..">等
  <script th:src="@{/js/jquery-2.4.min.js}"></script> 前面有/,默认加上项目跟

4、thymeleaf的表达式
  th:action 配合url表达式使用
  th:each 循环展示数据(list map array)

  <p th:each="user:${userlist}">
    <span th:text="{userstat.count}">张</span>---userstat默认实体+stat 表示循环 体信息
    <span th:text="{user.nick}">张</span>
  </p>
  <p th:each="user,iterStat:${userlist}"> -----------自己声明的iterStat循环体
    <span th:text="{iterStat.count}">张</span>
    <span th:text="{user.nick}">张</span>
  </p>

  循环体信息 如下:index当前迭代对象的index
    count当前迭代对象的个数
    size 被迭代对象的大小
    current 当前迭代变量
    first 布尔值 当前循环是否是第一个

    ......

  <p th:each="user:${userMap}">
    <span th:text="{user.key}">张</span>
    <span th:text="{user.value.nick}">张</span>
  </p>

  th:href 定义超链接
  th:id 类似html标签中的id属性
  th:name 类似html标签中的name属性
  th:if 条件判断
  th:unless 与th:if 相反操作
  th:switch/th:case 判断语句
  <div th:switch="${sex}">
    <p th:case="1">性别:男</p>
    <p th:case="2">性别:男</p>
    <p th:case="*">性别:未知</p>
  </div>
  一旦某个case判断值为true,剩余的case则都当做false;
  "*" 表示默认的的case,前面的case都不匹配的时候,执行默认的case

  th:object 用于数据对象绑定 ,通常用于选择变量表达式
  th:src 用于外部资源引入 通常与@{}表达式结合使用
    <script th:src="@{/js/jquery-2.4.min.js}"></script>
  th:text 文本显示
  th:value 类似html标签中的value的属性 赋值
  th:attr 为属性赋值,可以用动态属性赋值
  th:attr="value=${user.name}"
  th:onclick 点击事件 th:onclick="'getCollect()'" 注意""里面的单引号
  th:style 也要注意""号里面的单引号
  th:method 设置请求方法
  th:inline 内联文本 内联脚本。有三个取值类型 text javascript 和none
  该属性使用内联表达式[[..]]展示变量数据,
  比如:内联文本
  <span th:inline="text">Hello,[[${user.nick}]]</span>
  等同于
  <span>Hello,<span th:text="${user.nick}"></span></span>
  再如:内联脚本
  <script th:inline="javascript" type="text/javascript">
    var user=[[${user.nick}]]
    alert(user)
  </script>
  当值为none时 可省略
5、thymeleaf字面量
  文本字面量:用单引号''包围的字符串为文本字面量
  数字字面量:可以直接写数字 也可以进行+-*/操作
  boolean字面量: true和false
  <p th:if="${isFlag==true}">
    执行操作
  </p>
  null字面量:null
  <p th:if="${isFlag!=null}">
    执行操作
  </p>
6、字符串拼接
  <span th:text="'当前是第'+${num}+'页,共'+${total}+'页'"></span>
  <span th:text="|当前是第${num}页,共${total}页|"></span>
7、三元运算判断
  <span th:text="${sex eq '1'}?'男':'女'">未知</span>
8、thymeleaf 内置对象
  #request 3.0
  #httpServletRequest 2.0
    <span th:text="${#request.getContextPath()}">
    <span th:text="${#request.getAttribute('name')}">
  #session 3.0
  #httpSession 2.0
    <span th:text="${#session.getAttribute('name')}">
    <span th:text="${#session.id}">
    <span th:text="${#session.lastAccessedTime}">
9、thymeleaf 功能性内置对象
  比如#dates、#arrays #strings等等 更多具体可以查官方文档
  <span th:text="${#dates.format(curDate,'yyyy-MM-dd HH:mm:ss')}"></span>

https://www.thymeleaf.org/

Thymeleaf 整理的更多相关文章

  1. Thymeleaf 常用th标签基础整理

    (一)Thymeleaf 是个什么?      简单说, Thymeleaf 是一个跟 Velocity.FreeMarker 类似的模板引擎,它可以完全替代 JSP .相较与其他的模板引擎,它有如下 ...

  2. 国外程序员整理的Java资源大全分享

    Java 几乎是许多程序员们的入门语言,并且也是世界上非常流行的编程语言.国外程序员 Andreas Kull 在其 Github 上整理了非常优秀的 Java 开发资源,推荐给大家. 译文由 Imp ...

  3. 基于java平台的常用资源整理

    这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...

  4. 这里整理了基于java平台的常用资源

    这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...

  5. 【转】国外程序员整理的Java资源大全

    Java几乎是许多程序员们的入门语言,并且也是世界上非常流行的编程语言.国外程序员Andreas Kull在其Github上整理了非常优秀的Java开发资源,推荐给大家.译文由ImportNew- 唐 ...

  6. 初步认识Thymeleaf:简单表达式和标签。(一)

    本文只适用于不会Java对HTML语言有基础的程序员们,是浏览了各大博客后收集整理,重新编辑的一篇文章,希望能对大家有所帮助. 对于Thymeleaf,网上特别官方的解释无非就是:网站或者独立应用程序 ...

  7. springboot(十五):springboot+jpa+thymeleaf增删改查示例

    这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...

  8. springboot+jpa+thymeleaf增删改查的示例(转)

    这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...

  9. org.springframework.expression.spel.SpelEvaluationException: EL1004E: Method call: Method service() cannot be found on com.my.blog.springboot.thymeleaf.util.MethodTest type

    前言 本文中提到的解决方案,源码地址在:springboot-thymeleaf,希望可以帮你解决问题. 至于为什么已经写了一篇文章thymeleaf模板引擎调用java类中的方法,又多此一举的单独整 ...

随机推荐

  1. hadoop stop-dfs.sh 无法停止 namenode datanode

    原因: HADOOP_PID_DIR 默认为 /tmp 目录,如果长期不访问/tmp/目录下的文件,文件会被自动清理,因此 stop-dfs.sh 无法根据 pid 停止 namenode, data ...

  2. Git-Runoob:Git 工作区、暂存区和版本库

    ylbtech-Git-Runoob:Git 工作区.暂存区和版本库 1.返回顶部 1. Git 工作区.暂存区和版本库 基本概念 我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电 ...

  3. PostgreSQL 实现按月按年,按日统计 分组统计

    endtime 是 timestamp select to_char(endtime, 'YYYY-MM-DD') as d , count(objectid) FROM sde.polygon wh ...

  4. 【mysql】一对一关系的理解,以及Navicat Premium怎么设置字段的唯一性(UNIQUE)?

    背景:一对一关系设计方法: 设计2张表:customer表,student表 学生表中通过字段customer_id与customer表产生关系. student表中的customer_id与cust ...

  5. 浅谈防火墙对FTP的影响及故障排除

    本文转载自:http://www.cnblogs.com/emanlee/archive/2013/01/07/2849680.html  向作者致敬! TP是常见的基于TCP的网络服务,它使用了两个 ...

  6. 简要介绍一下MD5加密的书写

    大家应该多清楚数据的重要性,可以假设一下:一个非常大的企业,因为一个程序员的疏忽大意,没有使用MD5加密,那么可以说这个企业的数据库是非常不安全的,可以轻而易举的的访问你的数据库,并执行任何操作. 下 ...

  7. Spring Cloud的几个组件

    在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现.服务消费.负载均衡.断路器.智能路由.配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统.一个简答的微服务系统如下图: ...

  8. Jmeter接口测试系列之判断测试结果

    在使用jmeter进行接口测试时,我们需要根据测试用例判断其测试结果是否一致,判断其执行是否成功. 在jmeter中也可以使用响应断言去判断,但是有时我们需要根据不同的用例,其判断条件不同,所以这里我 ...

  9. Selenium学习之==>Css Selector使用方法

    一.什么是Css Selector Css Selector定位实际就是HTML的Css选择器的标签定位 工具 Css Selector的练习建议大家安装火狐浏览器后,下载插件,FireFinder ...

  10. SAP屏幕事件的控制

    1. INITALIZATION事件 该事件在屏幕未显示之前执行,对程序设置值及屏幕元素进行初始化赋值. REPORT  Y001. PARAMETERS QUAL_DAY TYPE D DEFAUL ...