您好,登錄后才能下訂單哦!
最近項目用到了Spring Boot ,但是在控制器返回html視圖并渲染參數(shù)的時候,存在了疑問。后面考慮用Thymeleaf
,感覺真的不錯,下面分享給大家
總共四步:
一、相關Jar的引用
1、maven的引用方式:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
2、我現(xiàn)在的項目是用的Gradle,在build.gradle 里面的dependency加入以下配置:
compile "org.springframework.boot:spring-boot-starter-thymeleaf"
二、Spring Boot 控制器Controller的配置,需要使用Model來進行參數(shù)傳遞(或者自定義Map)
@RequestMapping("/index") public String index(Model model) { model.addAttribute("loginName", "admin"); model.addAttribute("loginId", "27"); return "index"; }
因為Thymeleaf 默認的視圖返回路徑是 /src/java/resources/templates ,而且默認后綴是.html , 所以我們的頁面視圖就放到templates目錄下
三、頁面視圖的配置
1、在html標簽上引入 Thymeleaf 的標簽庫,然后參數(shù)輸出就可以直接使用${} 了
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
例如:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></meta> <title>im test page</title> </head> <body> loginId:<span th:text="${loginId}"></span> loginName:<span th:text="${loginName}"></span> </body> </html>
最后的輸出結果:
四、Thymeleaf 的緩存配置
每次更改頁面,如果不配置Thymeleaf 緩存設置為false,那么每次更改html頁面都需要重啟頁面才刷新,這肯定是我們不愿意的
那么有一個簡單的辦法,在我們的的基礎配置文件里面加入一句配置。 例如我的是application.properties 里面加入一句:
#Thymeleaf cache set spring.thymeleaf.cache=false
重啟,配置完成
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。