欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java SpringBoot模板引擎之 Thymeleaf入門詳解

 更新時(shí)間:2021年10月08日 11:01:41   作者:龍弟-idea  
jsp有著強(qiáng)大的功能,能查出一些數(shù)據(jù)轉(zhuǎn)發(fā)到JSP頁面以后,我們可以用jsp輕松實(shí)現(xiàn)數(shù)據(jù)的顯示及交互等,包括能寫Java代碼。但是,SpringBoot首先是以jar的方式,不是war;其次我們的tomcat是嵌入式的,所以現(xiàn)在默認(rèn)不支持jsp

模板引擎簡介

如果我們直接用純靜態(tài)頁面方式,必然會給開發(fā)帶來很大麻煩,所以springboot推薦使用模板引擎,其實(shí)jsp就是一個(gè)模板引擎,還有用的比較多的freemarker,包括SpringBoot給我們推薦的Thymeleaf!模板引擎的本質(zhì)思想如下圖:

引入Thymeleaf模板引擎

Thymeleaf 官網(wǎng):Thymeleaf

Spring官方文檔:

https://docs.spring.io/spring-boot/docs/2.2.5.RELEASE/reference/htmlsingle/#using-boot-starter

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

Maven自動下載jar包,下圖試maven下載的東西;

分析Thymeleaf模板引擎

首先按照SpringBoot的自動配置原理來看一下我們這個(gè)Thymeleaf的自動配置規(guī)則,再按照這個(gè)規(guī)則,我們進(jìn)行使用??梢韵热タ纯碩hymeleaf的自動配置類:ThymeleafProperties

我們可以在配置文件看到默認(rèn)的前綴和后綴!

我們只需要把我們的html頁面放在類路徑下的templates下,thymeleaf就可以幫我們自動渲染。

測試Thymeleaf模板引擎

1、編寫一個(gè)TestController

2、編寫一個(gè)測試頁面 test.html 放在 templates 目錄下

3、啟動項(xiàng)目請求測試

4、結(jié)論

只要需要使用thymeleaf,只需要導(dǎo)入對應(yīng)的依賴就可以了,然后將html放在templates的目錄下即可

Thymeleaf入門:

我們可以查看下Thymeleaf 官網(wǎng):https://www.thymeleaf.org/
簡單練習(xí):查出一些數(shù)據(jù),在頁面中展示

1、修改測試請求,增加數(shù)據(jù)傳輸

@Controller
public class TestController {
 
    @RequestMapping("/t1")
    public String test1(Model model){
        //存入數(shù)據(jù)
        model.addAttribute("msg","Hello,Thymeleaf");
        //classpath:/templates/test.html
        return "test";
    }
}

2、使用thymeleaf

我們要使用thymeleaf,需要在html文件中導(dǎo)入命名空間的約束,方便提示。

3、我們?nèi)ゾ帉懴虑岸隧撁?/h3>
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>九陽真經(jīng)---龍弟</title>
</head>
<body>
<h1>測試頁面</h1>
<!--th:text就是將div中的內(nèi)容設(shè)置為它指定的值-->
<div th:text="${msg}"></div>
</body>
</html>

4、啟動測試!

thymeleaf語法學(xué)習(xí)

1、使用任意的 th:attr 來替換Html中原生屬性的值!

2、表達(dá)式語法:

練習(xí)測試

@Controller
public class TestController {
    @RequestMapping("/t2")
    public String test2(Map<String,Object> map){
        //存入數(shù)據(jù)
        map.put("msg","<h1>Hello,SpringBoot</h1>");
        map.put("users", Arrays.asList("dragon","longdi"));
        //classpath:/templates/test.html
        return "test";
    }
}

2、測試頁面取出數(shù)據(jù)

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>九陽真經(jīng)---龍弟</title>
</head>
<body>
<h1>測試頁面</h1>
 
<div th:text="${msg}"></div>
<!--不轉(zhuǎn)義-->
<div th:utext="${msg}"></div>
<!--遍歷數(shù)據(jù)-->
<!--th:each每次遍歷都會生成當(dāng)前這個(gè)標(biāo)簽-->
<h4 th:each="user :${users}" th:text="${user}"></h4>
<hr>
    <!--行內(nèi)寫法-->
    <h4 th:each="user:${users}">[[${user}]]</h4>
</body>
</html>

3、啟動項(xiàng)目測試!

總結(jié):

由于thymeleaf很多語法樣式,我們現(xiàn)在學(xué)了也會忘記,因此,在學(xué)習(xí)過程中,需要使用什么,根據(jù)官方文檔來查詢,所以要熟練使用官方文檔!

到此這篇關(guān)于Java SpringBoot模板引擎之 Thymeleaf入門詳解的文章就介紹到這了,更多相關(guān)Java SpringBoot Thymeleaf內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java程序中指定某個(gè)瀏覽器打開的實(shí)現(xiàn)方法

    java程序中指定某個(gè)瀏覽器打開的實(shí)現(xiàn)方法

    最近工作中遇到一個(gè)需求,是要利用java打開指定瀏覽器,整理后發(fā)現(xiàn)有四種解決的方法,所以想著分享出來,下面這篇文章主要給大家介紹了java程序中指定某個(gè)瀏覽器打開的實(shí)現(xiàn)方法,,需要的朋友可以參考下。
    2017-03-03
  • java中Map遍歷的四種方式總結(jié)

    java中Map遍歷的四種方式總結(jié)

    Map集合遍歷日常開發(fā)最常使用,下面這篇文章主要給大家總結(jié)介紹了關(guān)于java中Map遍歷的四種方式,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-03-03
  • springboot整合shiro與自定義過濾器的全過程

    springboot整合shiro與自定義過濾器的全過程

    這篇文章主要給大家介紹了關(guān)于springboot整合shiro與自定義過濾器以及Shiro中權(quán)限控制的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01
  • 關(guān)于Assert.assertEquals報(bào)錯(cuò)的問題及解決

    關(guān)于Assert.assertEquals報(bào)錯(cuò)的問題及解決

    這篇文章主要介紹了關(guān)于Assert.assertEquals報(bào)錯(cuò)的問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Java線程池中的各個(gè)參數(shù)如何合理設(shè)置

    Java線程池中的各個(gè)參數(shù)如何合理設(shè)置

    這篇文章主要介紹了Java線程池中的各個(gè)參數(shù)如何合理設(shè)置操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • JavaWeb 中Cookie實(shí)現(xiàn)記住密碼的功能示例

    JavaWeb 中Cookie實(shí)現(xiàn)記住密碼的功能示例

    cookie是一種WEB服務(wù)器通過瀏覽器在訪問者的硬盤上存儲信息的手段。Cookie的目的就是為用戶帶來方便,為網(wǎng)站帶來增值。這篇文章主要介紹了JavaWeb 中Cookie實(shí)現(xiàn)記住密碼的功能示例,需要的朋友可以參考下
    2017-06-06
  • Java 注冊時(shí)發(fā)送激活郵件和激活的實(shí)現(xiàn)示例

    Java 注冊時(shí)發(fā)送激活郵件和激活的實(shí)現(xiàn)示例

    這篇文章主要介紹了Java 注冊時(shí)發(fā)送激活郵件和激活的實(shí)現(xiàn)示例的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Java檢查日期字符串是否合法的方法總結(jié)

    Java檢查日期字符串是否合法的方法總結(jié)

    后端接口在接收數(shù)據(jù)的時(shí)候,都需要進(jìn)行檢查。檢查全部通過后,才能夠執(zhí)行業(yè)務(wù)邏輯。本文總結(jié)了四個(gè)Java檢查日期字符串是否合法的方法,感興趣的可以了解一下
    2022-10-10
  • spring-boot項(xiàng)目啟動遲緩異常排查解決記錄

    spring-boot項(xiàng)目啟動遲緩異常排查解決記錄

    這篇文章主要為大家介紹了spring-boot項(xiàng)目啟動遲緩異常排查解決記錄,突然在本地啟動不起來了,表象特征就是在本地IDEA上運(yùn)行時(shí),進(jìn)程卡住也不退出,應(yīng)用啟動時(shí)加載相關(guān)組件的日志也不輸出
    2022-02-02
  • Tomcat安裝配置及Eclipse配置詳解

    Tomcat安裝配置及Eclipse配置詳解

    給大家介紹一下Tomcat安裝配置及Eclipse配置的全部圖文過程,如果你對這個(gè)還有不明白,一起跟著小編學(xué)習(xí)下。
    2017-11-11

最新評論