溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SpringBoot中如何使用Thymeleaf模板

發(fā)布時(shí)間:2022-04-25 13:47:31 來源:億速云 閱讀:197 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細(xì)介紹“SpringBoot中如何使用Thymeleaf模板”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“SpringBoot中如何使用Thymeleaf模板”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。

一.什么是Thymeleaf

官網(wǎng)原話:Thymeleaf是適用于Web和獨(dú)立環(huán)境的現(xiàn)代服務(wù)器端Java模板引擎,能夠處理HTML,XML,JavaScript,CSS甚至純文本。 Thymeleaf的主要目標(biāo)是提供一種優(yōu)雅且高度可維護(hù)的模板創(chuàng)建方式。為此,它以自然模板的概念為基礎(chǔ),以不影響模板用作設(shè)計(jì)原型的方式將其邏輯注入模板文件。這樣可以改善設(shè)計(jì)溝通,并縮小設(shè)計(jì)團(tuán)隊(duì)與開發(fā)團(tuán)隊(duì)之間的差距。Thymeleaf是一個(gè)HTML5模板引擎,可用于Web環(huán)境中的應(yīng)用開發(fā)。Thymeleaf提供了一個(gè)用于整合Spring MVC的可選模塊,在應(yīng)用開發(fā)中,你可以使用Thymeleaf來完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目標(biāo)在于提供一種可被瀏覽器正確顯示的、格式良好的模板創(chuàng)建方式。thymeleaf模板引擎,替代jsp。

二.SpringBoot中使用Thymeleaf模板

1.pom.xml中添加thymeleaf依賴

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

2.關(guān)閉thymeleaf緩存

在application.yml中的spring:下添加如下代碼(能讓改動(dòng)的頁面及時(shí)生效,實(shí)現(xiàn)類似熱部署效果):

#能讓改動(dòng)的頁面及時(shí)生效,實(shí)現(xiàn)類似熱部署效果
thymeleaf:
    cache: false

注意縮進(jìn),添加后縮進(jìn)如下:

SpringBoot中如何使用Thymeleaf模板

3.創(chuàng)建thymeleaf模板頁面

創(chuàng)建一個(gè)普通的html文件hello.html,如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
</body>
</html>

在html的標(biāo)簽上加入名稱空間xmlns:th="http://www.thymeleaf.org"表示該頁面是一個(gè)thymeleaf模板頁面。 即把上述代碼中<html lang="en">換成<html lang="en" xmlns:th="http://www.thymeleaf.org"> 這樣就可以在頁面中的標(biāo)簽內(nèi)使用th屬性取出model中的值,類似于EL表達(dá)式。 具體用法代碼如下:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <p th:text="'歡迎來到中國(guó),我叫'+${name}+',今年'+${age}+'歲。'"></p>
    <p>歡迎來到中國(guó),我叫<span th:text="${name}"></span>,今年<span th:text="${age}"></span>歲。</p>
</body>
</html>

4.創(chuàng)建一個(gè)類(用于與上述html頁面交互)

ackage com.ysw.springboot01.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/thy")
public class ThymeleafController {
    @RequestMapping("/hello")
    public String hello0(Model model){
        //向model中存入數(shù)據(jù)
        model.addAttribute("name","李白");
        model.addAttribute("age","18");
        //跳轉(zhuǎn)到hello.html模版引擎
        return "hello";
    }
}

5.訪問服務(wù)路徑

效果如下:

SpringBoot中如何使用Thymeleaf模板

讀到這里,這篇“SpringBoot中如何使用Thymeleaf模板”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI