Thymeleaf对象的使用:字符串对象
对象 字符串 thymeleaf 使用
2023-09-11 14:21:08 时间
Thymeleaf主要使用 org.thymeleaf.expression.Strings 类处理字符串,在模板中使用 #strings 对象来处理字符串。
开发环境:IntelliJ IDEA 2019.2.2
Spring Boot版本:2.1.8
新建一个名称为demo的Spring Boot项目。
1、pom.xml
加入Thymeleaf依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
2、src/main/resources/application.yml
设置模板缓存为false,这样修改html页面后刷新浏览器能马上看到结果
spring: thymeleaf: cache: false
3、src/main/java/com/example/demo/TestController.java
package com.example.demo; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class TestController { @RequestMapping("/") public String test(){ return "test"; } }
4、src/main/resources/templates/test.html
调用参数的toString方法返回字符串 <div th:text="${#strings.toString('hello')}"></div> 返回字符串的长度 <div th:text="${#strings.length('hello')}"></div> 判断是否为空或null <div th:text="${#strings.isEmpty('hello')}"></div> <div th:text="${#strings.isEmpty('')}"></div> <div th:text="${#strings.isEmpty(null)}"></div> 为空或null时设置默认值 <div th:text="${#strings.defaultString('hello','a')}"></div> <div th:text="${#strings.defaultString('','b')}"></div> <div th:text="${#strings.defaultString(null,'c')}"></div> 判断是否包含(区分大小写) <div th:text="${#strings.contains('hello','he')}"></div> <div th:text="${#strings.contains('hello','HE')}"></div> 判断是否包含(忽略大小写) <div th:text="${#strings.containsIgnoreCase('hello','he')}"></div> <div th:text="${#strings.containsIgnoreCase('hello','HE')}"></div> 判断开头和结尾是否包含(区分大小写) <div th:text="${#strings.startsWith('hello','he')}"></div> <div th:text="${#strings.startsWith('hello','HE')}"></div> <div th:text="${#strings.startsWith('hello','el')}"></div> <div th:text="${#strings.endsWith('hello','lo')}"></div> 获取字符串的索引(如果不存在返回-1) <div th:text="${#strings.indexOf('hello','el')}"></div> <div th:text="${#strings.indexOf('hello','ee')}"></div> 指定开始和结束索引,截取字符串(如果索引超过字符串长度,则抛出异常) <div th:text="${#strings.substring('hello',1,3)}"></div> 指定从某个字符串后面截取字符串(如果不包含则返回空字符串) <div th:text="${#strings.substringAfter('hello','e')}"></div> <div th:text="${#strings.substringAfter('hello','ee')}"></div> 指定从某个字符串前面截取字符串(如果不包含则返回空字符串) <div th:text="${#strings.substringBefore('hello','e')}"></div> <div th:text="${#strings.substringBefore('hello','ee')}"></div> 替换字符串 <div th:text="${#strings.replace('hello','e','a')}"></div> 转换为大写 <div th:text="${#strings.toUpperCase('hello')}"></div> 转换为小写 <div th:text="${#strings.toLowerCase('HELLO')}"></div> 首字母转换为大写 <div th:text="${#strings.capitalize('hello')}"></div> 首字母转换为小写 <div th:text="${#strings.unCapitalize('heLLo')}"></div> 每个单词的首字母转为大写 <div th:text="${#strings.capitalizeWords('hello world')}"></div> 根据分隔符将每个单词的首字母转换为大写 <div th:text="${#strings.capitalizeWords('hello-world','-')}"></div> 字符串前面追加 <div th:text="${#strings.prepend('world','hello ')}"></div> 字符串后面追加 <div th:text="${#strings.append('hello',' world')}"></div> 拼接字符串(参数个数不限) <div th:text="${#strings.concat('hello',' world',' !')}"></div> 从第二个参数之后拼接字符串,如果参数为null,则用第一个参数替代 <div th:text="${#strings.concatReplaceNulls('*','hello',null,'world')}"></div> 删除空白 <div th:text="${#strings.trim(' hello ')}"></div> 字符串截取指定长度(最小为3),后面加... <div th:text="${#strings.abbreviate('hello,world', 8)}"></div> 产生指定位数的随机字母数字,范围为大写英文字母加0-9数字 <div th:text="${#strings.randomAlphanumeric(4)}"></div> 调用HtmlEscape类的escapeHtml4Xml方法对参数进行编码 <div th:text="${#strings.escapeXml('<span>hello</span>')}"></div>
浏览器访问:http://localhost:8080
页面输出:
调用参数的toString方法返回字符串 hello 返回字符串的长度 5 判断是否为空或null false true true 为空或null时设置默认值 hello b c 判断是否包含(区分大小写) true false 判断是否包含(忽略大小写) true true 判断开头和结尾是否包含(区分大小写) true false false true 获取字符串的索引(如果不存在返回-1) 1 -1 指定开始和结束索引,截取字符串(如果索引超过字符串长度,则抛出异常) el 指定从某个字符串后面截取字符串(如果不包含则返回空字符串) llo 指定从某个字符串前面截取字符串(如果不包含则返回空字符串) h 替换字符串 hallo 转换为大写 HELLO 转换为小写 hello 首字母转换为大写 Hello 首字母转换为小写 heLLo 每个单词的首字母转为大写 Hello World 根据分隔符将每个单词的首字母转换为大写 Hello-World 字符串前面追加 hello world 字符串后面追加 hello world 拼接字符串(参数个数不限) hello world ! 从第二个参数之后拼接字符串,如果参数为null,则用第一个参数替代 hello*world 删除空白 hello 字符串截取指定长度(最小为3),后面加... hello... 产生指定位数的随机字母数字,范围为大写英文字母加0-9数字 PBAT 调用HtmlEscape类的escapeHtml4Xml方法对参数进行编码 <span>hello</span>
相关文章
- js中json对象和字符串的转换
- 使用AutoMapper 处理DTO数据对象的转换
- 在scala中使用fastjson将json字符串转为scala中的Class对象时出错 com.alibaba.fastjson.JSONException: syntax error, expect {, actual float, pos 178, fieldName order_price, fastjson-version 1.2.68
- jackson2.8.4java对象序列化成json字符串格式化时间
- Redis-数据结构与对象
- Js中把JSON字符串转换为JSON对象(eval()、new Function())
- Json对象与Json字符串互转(4种转换方式) jquery 以及 js 的方式
- VBScript把json字符串解析成json对象的2个方法
- js 将json字符串转换为json对象的方法解析
- "无法从带有索引像素格式的图像创建graphics对象" 解决
- C++ 对象的内存布局(下)
- 我对什么是真正的对象,以及软件中的对象在分析阶段、设计阶段、实现阶段的一些看法
- k8s常用对象图示:Deployment、ReplicaSet、Pod它们的关系
- Python json使用实例:字符串与对象互转代码示例
- 答网友提问:为什么语句 var oModel = this.stub() 是构造一个stub对象? stub()是一个函数,从哪里来的?
- Atitit json序列化工具 JsonParserAtiver 参考 Atitit json序列化原理 序列化是将一个对象变成json格式的字符串,而反序列化是将json格式的字符串变
- json对象、json字符串的区别和相互转换
- js将form表单序列化[json字符串、数组、对象]
- JAVAWEB开发之Session的追踪创建和销毁、JSP具体解释(指令,标签,内置对象,动作即转发和包括)、JavaBean及内省技术以及EL表达式获取内容的使用
- 学习笔记:Javascript 变量 包装对象
- 将string类对象中的内容格式化到字符串Buffer中时遇到的异常崩溃分析
- 你的对象被人从网络传输走了还能回来吗?
- 第二篇:虚拟机内存结构以及虚拟机中销毁和新建对象