當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringBoot_web开发-引入thymeleaf
生活随笔
收集整理的這篇文章主要介紹了
SpringBoot_web开发-引入thymeleaf
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
前端交給我們的是html頁面,如果是我們以前開發(fā),我們需要把它轉(zhuǎn)成JPS文件,轉(zhuǎn)JSP的好處,當我們查出一些數(shù)據(jù),轉(zhuǎn)化到JSP頁面以后,我們可以用c:each進行遍歷,c:if進行判斷,我們JSP支持非常強大的內(nèi)容,包括也能寫JAVA代碼,但是我們現(xiàn)在這種情況,SpringBoot是jar包的方式,不是web項目,第二我們用的還是嵌入式的tomcat,所以他默認是不支持JSP的,不支持JPS,如果我們使用從靜態(tài)頁面的方式,那給我們開發(fā)帶來非常大的麻煩,那怎么辦呢,我們springboot推薦使用模板引擎,那么模板引大家聽得很多,其實JSP不就是一個模板引擎嗎,加上市面上的Velocity,還有FreeMark,包括SpringBoot推薦的thymeleaf,模板引擎非常多,但再多的模板引擎,他們的思想都是一樣的,什么樣的一個思想呢,模板引擎的作用就是我們寫一個模板,有些數(shù)據(jù)是動態(tài)的,我們寫一些表達式,而這值從哪兒來呢,我們來組裝一些數(shù)據(jù),把這數(shù)據(jù)找到,然后把模板和數(shù)據(jù)交給模板引擎,模板引擎按照數(shù)據(jù),把這個表達式解析,填充到我們指定的位置,然后把數(shù)據(jù)輸出一個我們想要的內(nèi)容,給我們寫出去,這就是我們的模板引擎,不管是JSP還是其他的模板引擎,都是這個思想,只不過就是說,不同模板引擎之間,他們的語法可能不一樣
模板引擎其他的我不介紹了,我們主要介紹SpringBoot推薦的thymeleaf模板引擎,這個我們稱之為高級語言的模板引擎,他的語法更簡單,而且功能更強大,我們就來看一下這個模板引擎,既然要看模板引擎,首先我們看SpringBoot里面怎么用,怎么用第一步,首先我們要引入thymeleaf,這怎么引呢,對于Springboot來說,什么東西都是stater的事嗎,我們來引一下,pom文件里面,我們來看springboot的官方文檔,在官方文檔的starter里面,https://docs.spring.io/spring-boot/docs/1.5.22.RELEASE/reference/html/using-boot-build-systems.html
#using-boot-starter有咱們模板引擎的場景spring-boot-starter-thymeleaf那我們就來引用,我們就叫spring-boot-starter-thymeleaf,版本我們不用管,讓他來自動下載,<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>我們來看一下他下載了什么,如果我們需要thymeleaf就只需要他就行了<properties><thymeleaf.version>3.0.9.RELEASE</thymeleaf.version><thymeleaf-layout-dialect.version>2.3.0</thymeleaf-layout-dialect.version><!-- 布局功能的支持程序 thymeleaf3主程序 layout2以上版本 --><!-- thymeleaf2 layout1 --><thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>
</properties>
但是我們來說,現(xiàn)在默認用的是2.1.6版本,這個2.1.16版本太低了,我們來看一下,thymeleaf的官網(wǎng),他把東西都放到github下,我們來搜索一下github上的thymeleafhttps://github.comhttps://github.com/thymeleaf/thymeleaf就是這個項目,releases已發(fā)布的,發(fā)布到3.0.9了,那我們想要怎么切換,Springboot官方文檔里面也說了,Use Thymeleaf 3https://docs.spring.io/spring-boot/docs/1.5.22.RELEASE/reference/html/howto-spring-mvc.html
#howto-use-thymeleaf-3我們使用3版本,只要你把這個版本號改一下就行了,<properties><thymeleaf.version>3.0.2.RELEASE</thymeleaf.version><thymeleaf-layout-dialect.version>2.1.1</thymeleaf-layout-dialect.version>
</properties>這就是thymeleaf3,布局功能的支持程序,就是這一塊特別注意,我們布局功能的支持程序,如果是thymeleaf3,適配layout2以上版本,<thymeleaf.version>3.0.9.RELEASE</thymeleaf.version>
<thymeleaf-layout-dialect.version>2.3.0</thymeleaf-layout-dialect.version>我們可以不使用springboot給我們提供的版本,比如我們用3.0.9,我們不用3.0.2,我們用3.0.9,那layout也應(yīng)該是3.0.2以上的版本,https://github.com/ultraq/thymeleaf-layout-dialect/releases?after=2.0.5Thymeleaf Layout Dialect 2.0.0ultraq released this on 9 Jul 2016 · 183 commits to master since this releaseLayout dialect rewritten to support Thymeleaf 3 (#68, Layout Dialect 2.0 milestone)如果自己來調(diào)節(jié),這個坑就是這樣,在2.0的時候,他說我們這個重寫了以后,來支持thymeleaf3的,2.0以上的layout功能才支持,layout是做支持擴展的,那我們也上升到最新版本2.2.2<thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>如果要改自己一定要注意,這種方式來切換版本,就是說通過這一個,大家以后就觸類旁通,要改springboot給我們提供的一些默認版本,我們就可以這么來改,如果里面還導入了一些適配的中間包,一定要參考官方文檔,他們之間的適配關(guān)系可別導錯了
?
總結(jié)
以上是生活随笔為你收集整理的SpringBoot_web开发-引入thymeleaf的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot_web开发-扩展与
- 下一篇: SpringBoot_web开发-thy