Thymeleaf 整理
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 整理的更多相关文章
- Thymeleaf 常用th标签基础整理
(一)Thymeleaf 是个什么? 简单说, Thymeleaf 是一个跟 Velocity.FreeMarker 类似的模板引擎,它可以完全替代 JSP .相较与其他的模板引擎,它有如下 ...
- 国外程序员整理的Java资源大全分享
Java 几乎是许多程序员们的入门语言,并且也是世界上非常流行的编程语言.国外程序员 Andreas Kull 在其 Github 上整理了非常优秀的 Java 开发资源,推荐给大家. 译文由 Imp ...
- 基于java平台的常用资源整理
这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...
- 这里整理了基于java平台的常用资源
这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...
- 【转】国外程序员整理的Java资源大全
Java几乎是许多程序员们的入门语言,并且也是世界上非常流行的编程语言.国外程序员Andreas Kull在其Github上整理了非常优秀的Java开发资源,推荐给大家.译文由ImportNew- 唐 ...
- 初步认识Thymeleaf:简单表达式和标签。(一)
本文只适用于不会Java对HTML语言有基础的程序员们,是浏览了各大博客后收集整理,重新编辑的一篇文章,希望能对大家有所帮助. 对于Thymeleaf,网上特别官方的解释无非就是:网站或者独立应用程序 ...
- springboot(十五):springboot+jpa+thymeleaf增删改查示例
这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...
- springboot+jpa+thymeleaf增删改查的示例(转)
这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...
- 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类中的方法,又多此一举的单独整 ...
随机推荐
- hadoop stop-dfs.sh 无法停止 namenode datanode
原因: HADOOP_PID_DIR 默认为 /tmp 目录,如果长期不访问/tmp/目录下的文件,文件会被自动清理,因此 stop-dfs.sh 无法根据 pid 停止 namenode, data ...
- Git-Runoob:Git 工作区、暂存区和版本库
ylbtech-Git-Runoob:Git 工作区.暂存区和版本库 1.返回顶部 1. Git 工作区.暂存区和版本库 基本概念 我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电 ...
- PostgreSQL 实现按月按年,按日统计 分组统计
endtime 是 timestamp select to_char(endtime, 'YYYY-MM-DD') as d , count(objectid) FROM sde.polygon wh ...
- 【mysql】一对一关系的理解,以及Navicat Premium怎么设置字段的唯一性(UNIQUE)?
背景:一对一关系设计方法: 设计2张表:customer表,student表 学生表中通过字段customer_id与customer表产生关系. student表中的customer_id与cust ...
- 浅谈防火墙对FTP的影响及故障排除
本文转载自:http://www.cnblogs.com/emanlee/archive/2013/01/07/2849680.html 向作者致敬! TP是常见的基于TCP的网络服务,它使用了两个 ...
- 简要介绍一下MD5加密的书写
大家应该多清楚数据的重要性,可以假设一下:一个非常大的企业,因为一个程序员的疏忽大意,没有使用MD5加密,那么可以说这个企业的数据库是非常不安全的,可以轻而易举的的访问你的数据库,并执行任何操作. 下 ...
- Spring Cloud的几个组件
在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现.服务消费.负载均衡.断路器.智能路由.配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统.一个简答的微服务系统如下图: ...
- Jmeter接口测试系列之判断测试结果
在使用jmeter进行接口测试时,我们需要根据测试用例判断其测试结果是否一致,判断其执行是否成功. 在jmeter中也可以使用响应断言去判断,但是有时我们需要根据不同的用例,其判断条件不同,所以这里我 ...
- Selenium学习之==>Css Selector使用方法
一.什么是Css Selector Css Selector定位实际就是HTML的Css选择器的标签定位 工具 Css Selector的练习建议大家安装火狐浏览器后,下载插件,FireFinder ...
- SAP屏幕事件的控制
1. INITALIZATION事件 该事件在屏幕未显示之前执行,对程序设置值及屏幕元素进行初始化赋值. REPORT Y001. PARAMETERS QUAL_DAY TYPE D DEFAUL ...