在模板文件的表达式中,可以使用“${T(全限定类名).方法名(参数)}”这种格式来调用Java类的静态方法。
开发环境:IntelliJ IDEA 2019.2.2
Spring Boot版本:2.1.8
新建一个名称为demo的Spring Boot项目。
1、pom.xml
加入Thymeleaf依赖
<dependency> <groupId>org.springframework.bootgroupId> <artifactId>spring-boot-starter-thymeleafartifactId> dependency>
2、src/main/java/com/example/demo/TestUtils.java
package com.example.demo; public class TestUtils { public static String toUpperCase(String s){ return s.toUpperCase(); } }
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"; } public static String toLowerCase(String s){ return s.toLowerCase(); } }
4、src/main/resources/templates/test.html
<div th:text="${T(com.example.demo.TestUtils).toUpperCase('hello world 1')}">div> <div th:text="${T(com.example.demo.TestController).toLowerCase('HELLO WORLD 2')}">div>
浏览器访问:http://localhost:8080
页面输出:
HELLO WORLD 1 hello world 2