Springboot整合thymleaf模板引擎過程解析
這篇文章主要介紹了Springboot整合thymleaf模板引擎過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
thymeleaf作為springboot官方推薦使用的模板引擎,簡單易上手,功能強(qiáng)大,thymeleaf的功能和jsp有許多相似之處,兩者都屬于服務(wù)器端渲染技術(shù),但thymeleaf比jsp的功能更強(qiáng)大。
1. thymeleaf入門
1.1 引入坐標(biāo)
<!--springBoot整合thymeleaf-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
1.2 編寫controller類
@GetMapping("/index")
public String index(Model model){
model.addAttribute("msg","hello");
return "index";
}
1.3 前端頁面
頁面中的html標(biāo)簽必須添加這個地址,否則無法使用thymeleaf,且html標(biāo)簽內(nèi)只能寫這個網(wǎng)址,如果添加其他網(wǎng)址,則會造成頁面異常。
異常:

<html lang="en" xmlns:th="http://www.thymeleaf.org">
<cite th:text="${msg}">王超</cite>
結(jié)果為cite標(biāo)簽里的內(nèi)容“王超”被替換為hello.
th:text 是thymeleaf的語法之一,他的作用就是文本替換。不管標(biāo)簽內(nèi)是否有內(nèi)容,都會被替換成存儲的內(nèi)容。同時也要注意 thymeleaf比較嚴(yán)格,如果標(biāo)簽取不到值就會報錯。

常見的thymeleaf便簽如下:

在實際開發(fā)中由于ModelAndView是request級別的,所以如果要在其他頁面也展示數(shù)據(jù),就需要使用session進(jìn)行存儲。最常見的就是登陸之后要在index頁面展示用戶信息。
2. thymeleaf使用session內(nèi)置對象(不推薦)
2.1 controller類
HttpServletRequest request = HttpContextUtil.getHttpServletRequest();
request.getSession().setAttribute("user", (SysUser)SecurityUtils.getSubject().getPrincipal());
2.2 前臺頁面
<cite th:text="${session.user.getUsername()}">王超</cite>
我登陸的賬號名稱是admin,所以標(biāo)簽內(nèi)的王超會被替換為admin。如果用model的話是無法獲取到username的值,頁面會報錯。
所以需要用session進(jìn)行會話存儲,但是thymeleaf不推薦使用內(nèi)置對象。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot設(shè)置靜態(tài)資源訪問控制和封裝集成方案
這篇文章主要介紹了SpringBoot靜態(tài)資源訪問控制和封裝集成方案,關(guān)于springboot靜態(tài)資源訪問的問題,小編是通過自定義webconfig實現(xiàn)WebMvcConfigurer,重寫addResourceHandlers方法,具體完整代碼跟隨小編一起看看吧2021-08-08
Spring攔截器實現(xiàn)鑒權(quán)的示例代碼
本文主要介紹了Spring攔截器實現(xiàn)鑒權(quán)的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Java+Selenium實現(xiàn)文件上傳下載功能詳解
這篇文章主要介紹了java代碼如何利用selenium操作瀏覽器上傳和下載文件功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以參考一下2023-01-01
如何實現(xiàn)java執(zhí)行kettle并傳參數(shù)
文章主要介紹了在審批成功后如何使用Kettle傳遞批次號參數(shù)并執(zhí)行KTR文件,同時,提到了所需的主要POM依賴,并強(qiáng)調(diào)了個人經(jīng)驗的價值,鼓勵大家參考和使用2025-01-01

