创建项目
1.创建maven项目
2.修改pom文件
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.synda</groupId>
<artifactId>10-spring-boot-thymeleaf</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
</parent>
<dependencies>
<!-- spring-boot启动器:支持全栈式的web开发(包括了romcat和MVC等jar -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
<!-- 引入thymleaf -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
</dependencies>
</project>
3.创建templates目录:该目录是安全的,意味着外界不可以直接访问;
3.创建Controller
package com.synda.Controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class DemoController {
@RequestMapping("/show1")
public String getShowInfo(Model model) {
model.addAttribute("msg", "这是Thymeleaf练习");
return "index";
}
}
4.创建启动类
package com.synda;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class application {
public static void main(String[] args) {
SpringApplication.run(application.class, args);
}
}
5.在templates目录下创建index.html
(1)、使用th:text对字符串进行操作;
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>字符串操作练习th:text</title>
</head>
<body>
<!-- 获取字符串 -->
<span th:text="${msg}"></span>
<hr />
<!-- 可以设置为input的value值 -->
<input type="text" name="username" th:value="${msg}">
<hr />
<!-- 判断该字符串是否为空,返回布尔值 -->
<span th:text="${#strings.isEmpty(msg)}"></span>
<hr />
<!-- 判断该字符串是否含有指定字符 返回布尔值-->
<span th:text="${#strings.contains(msg,'T')}"></span>
<hr />
<!-- 查看指定字符在该字符串中的位置,返回该字符串的位置,如果没有,则返回-1 -->
<span th:text="${#strings.indexOf(msg,'T')}"></span>
<hr />
<!-- 判断该字符串是否以指定字符开头 -->
<span th:text="${#strings.startsWith(msg,'T')}"></span>
<hr />
<!-- 判断该字符串是否以给定的字符结尾 -->
<span th:text="${#strings.endsWith(msg,'s')}"></span>
<hr />
<!-- 返回该字符串的长度 -->
<span th:text="${#strings.length(msg)}"></span>
<hr />
<!-- 截取字符串 -->
<span th:text="${#strings.substring(msg,'13')}"></span>
<span th:text="${#strings.substring(msg,'10','13)}"></span>
<hr />
<!-- 大小写转换 -->
<span th:text="${#strings.toUpperCase(msg)}"></span>
<span th:text="{#strings.toLowerCase(msg)}"></span>
</body>
</html>
启动项目,访问http://localhost:8080/show,输出如下结果
(2)、Controller中新建一个方法,请求为show2
@RequestMapping("/show2")
public String getDateInfo(Model model) {
model.addAttribute("date", new Date());
return "index1";
}
(3)、创建index2对日期进行操作;
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- 传递两个参数,需要操作的日期,日期格式 -->
<span th:text="${#dates.format(date,'yyyy-mm-dd')}"></span>
<!-- 如果没有指定格式,则按照浏览器的默认来显示 -->
<span th:text="${#dates.format(date)}"></span>
<!-- 单独获取年/月/日 -->
<span th:text="${#dates.year(date)"></span>
<span th:text="${#dates.month(date)"></span>
<span th:text="${#dates.day(date)"></span>
</body>
</html>