Thymeleaf 提供了丰富的表达式工具类,例如:

#strings:字符串工具类
#dates:时间操作和时间格式化
#numbers:格式化数字对象的方法
#bools:常用的布尔方法


#strings 工具类

◼ 字符串长度(length)
◼ 字符串转换(toString)
◼ 检查字符串是否为空(isEmpty)
◼ 字符串是为空替换操作(defaultString)
◼ 检查字符串中是否包含某个字符串(contains containsIgnoreCase)
◼ 检查字符串是以片段开头还是结尾(startsWith endsWith)
◼ 截取(substring substringAfter substringBefore)
◼ 替换(replace)
◼ 追加(prepend append)
◼ 变更大小写(toUpperCase toLowerCase)
◼ 去空格(trim)
◼ 拆分和组合字符串(arrayJoin arraySplit)

示例:
如果值为 null 或 空串,则 true,否则 false

<p th:text="${#strings.isEmpty(stu.name)}"></p>

如果值为 null 或 空串,则显示默认值张三

<p th:text="${#strings.defaultString(stu.name,'张三')}"></p>

<p th:text="${#strings.length(stu.name)}"></p> <!-- 2 (stu.name='小明') -->
<p th:text="${#strings.contains('abcez','ez')}"></p> <!--true-->
<p th:text="${#strings.startsWith('Donabcez','Don')}"></p> <!--true-->
<p th:text="${#strings.indexOf('abcefg','e')}"></p> <!--3-->
最后一个参数<=总长度

<p th:text="${#strings.substring('abcefg',3,5)}"></p> <!--ef-->

<p th:text="${#strings.replace('aabbccbb','bb','zz')}"></p> <!--aazzcczz-->
<p th:text="${#strings.prepend('88888888','027-')}"></p> <!--027-88888888-->
<p th:text="${#strings.append('abc','123')}"></p> <!--abc123-->
<p th:text="${#strings.toUpperCase('abc')}"></p> <!--ABC-->
<p th:text="${#strings.trim(' abc ')}"></p> <!--abc-->


#dates 工具类

◼ 格式化操作(format)
◼ 获取日期属性操作(day month year hour minute second monthName
dayOfWeek )
◼ 生成日期操作(createNow create createToday)

示例:
后台添加代码:model.addAttribute(“today”,new Date());

<p th:text="${today}"></p>
<p th:text="${#dates.format(today,'yyyy/MM/dd HH:mm:ss')}"></p>
<p th:text="${#dates.year(today)}"></p>
<p th:text="${#dates.month(today)}"></p>
<p th:text="${#dates.monthName(today)}"></p>
<p th:text="${#dates.day(today)}"></p>
<p th:text="${#dates.dayOfWeek(today)}"></p>
<p th:text="${#dates.dayOfWeekName(today)}"></p>
<p th:text="${#dates.hour(today)}"></p>
<p th:text="${#dates.minute(today)}"></p>
<p th:text="${#dates.second(today)}"></p>
<p th:text="${#dates.createNow()}"></p> <!--含有时间-->
<p th:text="${#dates.createToday()}"></p> <!--时间为00:00:00-->
<p th:text="${#dates.create('2021','03','15')}"></p>

#numbers 工具类

◼ 对不够位数的数字进行补0(formatInteger )
◼ 设置千位分隔符(formatInteger)
◼ 精确小数点(formatDecimal )
◼ 设置百分号(formatPercent )
◼ 生成数组(sequence )

示例:
结果:010.13

<p th:text="${#numbers.formatDecimal('10.126',3,2)}"></p>

结果:¥1,000.00

<p th:text="${#numbers.formatCurrency('1000')}"></p>

生成 [0,1,2,3,4] 数组

<div th:each="n:${#numbers.sequence(0,4)}"><p th:text="${n}"></p>
</div>

生成 [0,2,4,6,8,10] 数组

<div th:each="num:${#numbers.sequence(0,10,2)}" ><p th:text="${num}"></p>
</div>

#bools 工具类

◼ 判断对象是否为 ture 或 false的操作:(isTrue isFalse)
◼ 数字 1 为 ture , 0 为 false;
◼ “on” 为 true, “off” 为 false;
◼ “true” 为 true, "false"为 false;

示例:

<p th:text="${#bools.isTrue(1)}"></p> <!--true-->
<p th:text="${#bools.isTrue('on')}"></p> <!--true-->
<p th:text="${#bools.isTrue('true')}"></p> <!--true-->

[JAVA EE] Thymeleaf 常用工具类相关推荐

  1. java file ip_java常用工具类 IP、File文件工具类

    本文实例为大家分享了java常用工具类的具体实现代码,供大家参考,具体内容如下 IP工具类 package com.jarvis.base.util; import java.io.IOExcepti ...

  2. java 随机md5_java常用工具类 Random随机数、MD5加密工具类

    本文实例为大家分享了java常用工具类的具体代码,供大家参考,具体内容如下 random随机数工具类 package com.jarvis.base.util; import java.util.ra ...

  3. 【Java】Java中的常用工具类(排名前 16)

    文章目录 前言 一.org.apache.commons.io.IOUtils 二.org.apache.commons.io.FileUtils 三.org.apache.commons.lang. ...

  4. Java线程并发常用工具类使用

    这次整理了一些比较常用的线程工具类啦. CountDownLatch:在一组线程执行完后,才能开始执行调用等待的线程.上片文章提到过junit的测试尽量不要测试线程,如果硬是要可以使用CountDow ...

  5. java工具类去掉字符串String中的.点。android开发java程序员常用工具类

    下面是工具类详细代码: package com.qq986945193.david;/*** qq986945193 Project* ================================ ...

  6. 【Java Se】常用工具类之多线程

    前言 到多线程这一块说明我们[Java Se]专栏就快结束了,感谢一直看过来的兄弟.多线程其实是非常复杂的,我们只是学一个入门,知道有这么个东西并且怎么运用它! 目录 前言 初识多线程 线程的创建 T ...

  7. 谷歌的json解析器Gson在Android/Java中的常用工具类

    gson解析器,可实现子类和json字符串之间互转 package com.hulk.ues.core;import android.text.TextUtils; import android.ut ...

  8. 常用工具类 Math:数学计算 Random:生成伪随机数 SecureRandom:生成安全的随机数 2020-2-13

    常用工具类 阅读: 324836 Java的核心库提供了大量的现成的类供我们使用.本节我们介绍几个常用的工具类. Math 顾名思义,Math类就是用来进行数学计算的,它提供了大量的静态方法来便于我们 ...

  9. Java常用工具类StringUtils的常用方法

    Java常用工具类StringUtils的常用方法 1.该工具类是用于操作Java.lang.String类的. 2.StringUtils类在操作字符串是安全的,不会报空指针异常,也正因此,在操作字 ...

最新文章

  1. SpringBoot 操作elasticsearch
  2. mysql 存储过程执行慢_MySQL存储过程因为字符集不同导致执行慢
  3. html5的新增的标签和废除的标签
  4. 面试官问:你讲讲分布式事务问题的几种方案?
  5. 使用string.Format需要注意的一个性能问题
  6. [react] React Fiber它的目的是解决什么问题?
  7. 呼伦贝尔学院计算机宿舍,2020年呼伦贝尔学院新生宿舍环境条件,大一新生男生女生宿舍内部图片【多图】...
  8. easyUI_rowdata
  9. 阿里巴巴java规范手册 -阿里巴巴java开发手册-java手册-最终版 官方网站
  10. xampp使用教程php,php集成套件服务器xampp安装使用教程
  11. STM8S103定时器1,定时器2多路PWM波输出
  12. 说话干嘛要“之道”啦?(1-10)
  13. 0开始学py爬虫(学习笔记)(Scrapy框架)(爬取职友集招聘信息)
  14. Linux下 Spring Boot 上传找不到临时目录, 出现500错误
  15. JS 点击气泡卡片自身外的区域自动关闭的代码逻辑
  16. php7 开发框架,Lin是一套基于php7.2的全新web框架
  17. latex怎样让题号顶格_笔记本-latex写作问题集锦
  18. 网站关键词排名优化需要注意哪些问题?
  19. python神经网络编程chap01
  20. bigmap 绘制三维地形图_3D-MAX真实三维地形制作过程

热门文章

  1. 2022-2028年中国低氧铜杆行业市场研究及前瞻分析报告
  2. 3 用python进行OpenCV实战之画图(直线,矩形,圆形)
  3. ServletContext讲解
  4. 【Sql Server】DateBase-自动化
  5. shap_value
  6. fastbert解读
  7. github下载源码也用命令进行安装包的联系
  8. tinybert华为
  9. Jieba分词原理与解析
  10. npm install遇到ENOENT: no such file or directory, rename错误