最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java基礎總結之Thymeleaf詳解

 更新時間:2021年05月14日 09:20:37   作者:wangxu123445678  
Thymeleaf是一種現(xiàn)代的基于服務器端的Java模板引擎技術,也是一個優(yōu)秀的面向Java的XML、XHTML、HTML5頁面模板,它具有豐富的標簽語言、函數(shù)和表達式,在使用Spring Boot框架進行頁面設計時,一般會選擇Thymeleaf模板,需要的朋友可以參考下

一、Thymeleaf語法

標簽

在HTML頁面上使用Thymeleaf標簽,Thymeleaf 標簽能夠動態(tài)地替換掉靜態(tài)內(nèi)容,使頁面動態(tài)展示。為了大家更直觀的認識Thymeleaf,下面展示一個在HTML文件中嵌入了Thymeleaf的頁面文件,示例代碼如下:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
        <link rel="stylesheet" type="text/css" media="all"
        href="../../css/gtvg.css" rel="external nofollow"  th:href="@{/css/gtvg.css}" rel="external nofollow"  />
    <title>Title</title>
</head>
<body>
	<p th:text="${hello}">歡迎進入Thymeleaf的學習</p>
</body>
</html>

thymelef常用標簽

標簽 說明
th:insert 布局標簽,替換內(nèi)容到引入的文件
th:replace 頁面片段包含(類似JSP中的include標簽)
th:each 元素遍歷(類似JSP中的c:forEach標簽)
th:if 條件判斷,如果為真
th:unless 條件判斷,如果為假
th:switch 條件判斷,進行選擇性匹配
th:case 條件判斷,進行選擇性匹配
th:value 屬性值修改,指定標簽屬性值
th:href 用于設定鏈接地址
th:src 用于設定鏈接地址
th:text 用于指定標簽顯示的文本內(nèi)容

標準表達式

說明 表達式語法
變量表達式 ${…}
選擇變量表達式 *{…}
消息表達式 #{…}
鏈接URL表達式 @{…}
片段表達式 ~{…}

1.1 變量表達式${…}

主要用于獲取上下文中的變量值,示例代碼如下:

<p th:text="${title}">這是標題</p>

Thymeleaf為變量所在域提供了一些內(nèi)置對象,具體如下所示

# ctx:上下文對象
# vars:上下文變量
# locale:上下文區(qū)域設置
# request:(僅限Web Context)HttpServletRequest對象
# response:(僅限Web Context)HttpServletResponse對象
# session:(僅限Web Context)HttpSession對象
# servletContext:(僅限Web Context)ServletContext對象

假設要在Thymeleaf模板引擎頁面中動態(tài)獲取當前國家信息,可以使用
#locale內(nèi)置對象,示例代碼如下

The locale country is: <span th:text="${#locale.country}">US</span>

1.2 選擇變量表達式*{…}

和變量表達式用法類似,一般用于從被選定對象而不是上下文中獲取屬性值,如果沒有選定對象,則和變量表達式一樣,示例代碼如下

<div th:object="${book}">
<p>titile: <span th:text="*{title}">標題</span>.</p>
</div>

*{title} 選擇變量表達式獲取當前指定對象book的title屬性值。

1.3 消息表達式 #{…}

消息表達式#{…}主要用于Thymeleaf模板頁面國際化內(nèi)容的動態(tài)替換和展示,使用消息表達式#{…}進行國際化設置時,還需要提供一些國際化配置文件。

1.4 鏈接表達式 @{…}

鏈接表達式@{…}一般用于頁面跳轉或者資源的引入,在Web開發(fā)中占據(jù)著非常重要的地位,并且使用也非常頻繁

<a th:href="@{http://localhost:8080/order/details(orderId=${o.id})}" rel="external nofollow" >view</a>
<a th:href="@{/order/details(orderId=${o.id},pid=${p.id})}" rel="external nofollow" >view</a>

鏈接表達式@{…}分別編寫了絕對鏈接地址和相對鏈接地址。

在有參表達式中,需要按照@{路徑(參數(shù)名稱=參數(shù)值,參數(shù)名稱=參數(shù)值…)}的形式編寫,同時該參數(shù)的值可以使用變量表達式來傳遞動態(tài)參數(shù)值

1.5 片段表達式 ~{…}

片段表達式~{…}用來標記一個片段模板,并根據(jù)需要移動或傳遞給其他模板。其中,最常見的用法是使用th:insert或th:replace屬性插入片段

<div th:insert="~{thymeleafDemo::title}"></div>

thymeleafDemo為模板名稱,Thymeleaf會自動查找“/resources/templates/”目錄下的thymeleafDemo模板,title為片段名稱

二、基本使用

2.1 Thymeleaf模板基本配置

首先 在Spring Boot項目中使用Thymeleaf模板,首先必須保證引入Thymeleaf依賴

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

其次,在全局配置文件中配置Thymeleaf模板的一些參數(shù)。一般Web項目都會使用下列配置

spring.thymeleaf.cache = true #啟用模板緩存
spring.thymeleaf.encoding = UTF_8 #模板編碼
spring.thymeleaf.mode = HTML5 #應用于模板的模板模式
spring.thymeleaf.prefix = classpath:/templates/ #指定模板頁面存放路徑
spring.thymeleaf.suffix = .html #指定模板頁面名稱的后綴

上述配置中:

spring.thymeleaf.cache表示是否開啟Thymeleaf模板緩存,默認為true,在開發(fā)過程中通常會關閉緩存,保證項目調(diào)試過程中數(shù)據(jù)能夠及時響應;

spring.thymeleaf.prefix指定了Thymeleaf模板頁面的存放路徑,默認為classpath:/templates/;

spring.thymeleaf.suffix指定了Thymeleaf模板頁面的名稱后綴,默認為.html

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

相關文章

  • java連接MySQL數(shù)據(jù)庫的代碼

    java連接MySQL數(shù)據(jù)庫的代碼

    這篇文章主要為大家詳細介紹了java連接MySQL數(shù)據(jù)庫的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 解決springboot遇到autowire注入為null的問題

    解決springboot遇到autowire注入為null的問題

    這篇文章主要介紹了解決springboot遇到autowire注入為null的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Java代碼讀取properties配置文件的示例代碼

    Java代碼讀取properties配置文件的示例代碼

    這篇文章主要介紹了Java代碼讀取properties配置文件,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • Feign踩坑源碼解讀之@FeignClient注入容器

    Feign踩坑源碼解讀之@FeignClient注入容器

    文章主要介紹了FeignClientsRegistrar類的作用和注冊Feign客戶端的過程,以及FeignClientFactoryBean的使用和目標對象的獲取
    2024-11-11
  • java中的stream流中的并行查詢java

    java中的stream流中的并行查詢java

    Stream流是Java 8引入的一種新的數(shù)據(jù)處理方式,它提供了一種高效、簡潔的數(shù)據(jù)處理方式,Stream流可以讓我們以聲明式的方式處理數(shù)據(jù),提高了代碼的可讀性和可維護性,同時,Stream流支持并行處理,可以充分利用多核CPU的性能,提高程序的運行效率
    2024-07-07
  • 關于maven本地倉庫的配置方式

    關于maven本地倉庫的配置方式

    這篇文章主要介紹了關于maven本地倉庫的配置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 詳解 maven的pom.xml用<exclusion>解決版本問題

    詳解 maven的pom.xml用<exclusion>解決版本問題

    這篇文章主要介紹了詳解 maven的pom.xml用<exclusion>解決版本問題的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • maven的5種打包方式小結

    maven的5種打包方式小結

    本文主要介紹了maven的5種打包方式小結,主要是幾種插件打包,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-06-06
  • MyBatis各種類型查詢數(shù)據(jù)參數(shù)綁定的實現(xiàn)

    MyBatis各種類型查詢數(shù)據(jù)參數(shù)綁定的實現(xiàn)

    本文主要介紹了MyBatis各種類型查詢數(shù)據(jù)參數(shù)綁定的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • 淺談Spring注入模型

    淺談Spring注入模型

    如果不深入到Spring的源碼,是很少有機會了解到Spring的注入模型(AutowireMode)。但是為了掃清我們學習Spring源碼的障礙,我們有必要了解下Spring的注入模型,感興趣的同學可以閱讀一下
    2023-04-04

最新評論

昌邑市| 新田县| 郯城县| 遵化市| 裕民县| 铜川市| 宁河县| 柯坪县| 手机| 容城县| 岗巴县| 舞钢市| 滁州市| 镇远县| 闸北区| 齐河县| 祥云县| 岫岩| 霍山县| 石嘴山市| 万州区| 焉耆| 鲁山县| 连平县| 图们市| 贵定县| 穆棱市| 永济市| 冀州市| 寿阳县| 米林县| 乌兰县| 彭州市| 长泰县| 通化县| 曲麻莱县| 游戏| 台湾省| 玉门市| 个旧市| 滁州市|