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. 使用System.ComponentModel.DataAnnotations验证字段数据正确性

    在.NET MVC 中,当页面提交model到Action的时候,自动填充ModelState.使用ModelState.IsValid进行方便快捷的数据验证,其验证也是调用命名空间System.Co ...

  2. python - Tkinter 模块 - python 自带的gui模块

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的内置模块,直接import tkinter即可使用. 1.创建窗口 from Tk ...

  3. 【IOS打包】ARCHIVE FAILED:Command CodeSign failed with a nonzero exit code

    [问题] [解决办法] 用xcode打开项目 command + k 重启电脑 参照:xcode打包报错command codesign failed with a nonzero exit code ...

  4. Cloudera-JDBC-Driver-for-Apache-Hive

    Cloudera-JDBC-Driver-for-Apache-Hive-Install-Guide.pdf https://github.com/FlowerBirds/flowerbirds.gi ...

  5. jeecg项目将workbook 的Excel流添加到zip压缩包里导出

    1.直接献出代码 Map<String,List<ConfidentialInformation>> typeMap = new HashMap<>(); try ...

  6. 从零构建vue项目(三)--vue常用插件

    一.直接拉取的模板中,package.json如下: { "name": "vuecli2-test", "version": " ...

  7. python+selenium下载文件——firefox

    修改Firefox的相关配置. 1.profile.set_preference('browser.download.folderList',2) 设置成0代表桌面,1代表下载到浏览器默认下载路径:2 ...

  8. 第四周Java实验总结&学习总结

    实验二 Java简单类与对象 实验目的 掌握类的定义,熟悉属性.构造函数.方法的作用,掌握用类作为类型声明变量和方法返回值: 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性 ...

  9. 简单记事本的基本实现&十四周总结

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  10. 【监控笔记】【2.3】扩展事件——慢查询SQL(执行超过3S的SQL)

    --sql server 2008及以上才支持,2012及以上才支持GUI界面 msdn 扩展事件:点击打开链接 [1]T-SQL实现 基于 rpc_completed(远程过程调用已完成时发生) 事 ...