Springboot整合Thymeleaf開發測試
阿新 • • 發佈:2019-01-01
- 第一步:在Maven中引入Thymeleaf的依賴,加入以下依賴配置即可:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
- 第二步:在Spring boot的核心配置檔案application.properties中對Thymeleaf進行配置:
#開發階段,建議關閉thymeleaf的快取
spring.thymeleaf.cache=false
#使用遺留的html5以去掉對html標籤的校驗
spring.thymeleaf.mode=LEGACYHTML5
在使用springboot的過程中,如果使用thymeleaf作為模板檔案,則要求HTML格式必須為嚴格的html5格式,必須有結束標籤,否則會報錯;如果不想對標籤進行嚴格的驗證,使用spring.thymeleaf.mode=LEGACYHTML5去掉驗證。去掉驗證,則需要引入如下依賴,否則會報錯(Springboot2.0+版本可不引入以下依賴):
<dependency> <groupId>net.sourceforge.nekohtml</groupId> <artifactId>nekohtml</artifactId> </dependency> <dependency> <groupId>org.unbescape</groupId> <artifactId>unbescape</artifactId> <version>1.1.5RELEASE</version> </dependency>
NekoHTML是一個Java語言的HTML掃描器和標籤補全器,這個解析器能夠掃描HTML檔案並“修正”HTML文件中的常見錯誤。
NekoHTML能增補確實的父元素,自動用結束標籤關閉相應的元素,修改不匹配的內嵌標籤等;
3. 第三步:寫一個Controller去對映到模板頁面(和SpringMVC基本一致),比如:
@RequestMapping("/index") public String index(Model model){ model.addAttribute("data","恭喜,Spring boot 整合Thymeleaf成功!"); //return 中就是頁面的名字(不帶html字尾) return "index"; }
- 第四步:在src/main/resources的templates下新建一個index.html頁面用於展示資料:
HTML頁面的元素中加入以下屬性:
<html xmlns:th="http://www.thymeleaf.org">
HTML頁面
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Springboot整合Thymeleaf</title>
</head>
<body>
<p th:text="${data}">Springboot整合Thymeleaf</p>
</body>
</html>
- Springboot使用Thymeleaf作為檢視展示,約定將模板檔案放置在src/main/resource/templates目錄下,靜態資源放置在src/main/resource/static目錄下