2021-01-30 分類: 網(wǎng)站建設(shè)
Spring Boot快速入門中我們完成了一個簡單的RESTful Service,體驗了快速開發(fā)的特性。在留言中也有朋友提到如何把處理結(jié)果渲染到頁面上。那么本篇就在上篇基礎(chǔ)上介紹一下如何進行Web應(yīng)用的開發(fā)。
靜態(tài)資源訪問
在我們開發(fā)Web應(yīng)用的時候,需要引用大量的js、css、圖片等靜態(tài)資源。
默認配置
Spring Boot默認提供靜態(tài)資源目錄位置需置于classpath下,目錄名需符合如下規(guī)則:
舉例:我們可以在src/main/resources/目錄下創(chuàng)建static,在該位置放置一個圖片文件。啟動程序后,嘗試訪問http://localhost:8080/D.jpg。如能顯示圖片,配置成功。
渲染W(wǎng)eb頁面
在之前的示例中,我們都是通過@RestController來處理請求,所以返回的內(nèi)容為json對象。那么如果需要渲染html頁面的時候,要如何實現(xiàn)呢?
模板引擎
在動態(tài)HTML實現(xiàn)上Spring Boot依然可以好勝任,并且提供了多種模板引擎的默認配置支持,所以在推薦的模板引擎下,我們可以很快的上手開發(fā)動態(tài)網(wǎng)站。
Spring Boot提供了默認配置的模板引擎主要有以下幾種:
Spring Boot建議使用這些模板引擎,避免使用JSP,若一定要使用JSP將無法實現(xiàn)Spring Boot的多種特性,具體可見后文:支持JSP的配置
當你使用上述模板引擎中的任何一個,它們默認的模板配置路徑為:src/main/resources/templates。當然也可以修改這個路徑,具體如何修改,可在后續(xù)各模板引擎的配置屬性中查詢并修改。
Thymeleaf
Thymeleaf是一個XML/XHTML/HTML5模板引擎,可用于Web與非Web環(huán)境中的應(yīng)用開發(fā)。它是一個開源的Java庫,基于Apache License 2.0許可,由Daniel Fernández創(chuàng)建,該作者還是Java加密庫Jasypt的作者。
Thymeleaf提供了一個用于整合Spring MVC的可選模塊,在應(yīng)用開發(fā)中,你可以使用Thymeleaf來完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目標在于提供一種可被瀏覽器正確顯示的、格式良好的模板創(chuàng)建方式,因此也可以用作靜態(tài)建模。你可以使用它創(chuàng)建經(jīng)過驗證的XML與HTML模板。相對于編寫邏輯或代碼,開發(fā)者只需將標簽屬性添加到模板中即可。接下來,這些標簽屬性就會在DOM(文檔對象模型)上執(zhí)行預先制定好的邏輯。
示例模板:
可以看到Thymeleaf主要以屬性的方式加入到html標簽中,瀏覽器在解析html時,當檢查到?jīng)]有的屬性時候會忽略,所以Thymeleaf的模板可以通過瀏覽器直接打開展現(xiàn),這樣非常有利于前后端的分離。
在Spring Boot中使用Thymeleaf,只需要引入下面依賴,并在默認的模板路徑src/main/resources/templates下編寫模板文件即可完成。
在完成配置之后,舉一個簡單的例子,在快速入門工程的基礎(chǔ)上,舉一個簡單的示例來通過Thymeleaf渲染一個頁面。
如上頁面,直接打開html頁面展現(xiàn)Hello World,但是啟動程序后,訪問http://localhost:8080/,則是展示Controller中host的值:http://blog.didispace.com,做到了不破壞HTML自身內(nèi)容的數(shù)據(jù)邏輯分離。
更多Thymeleaf的頁面語法,還請訪問Thymeleaf的官方文檔查詢使用。
Thymeleaf的默認參數(shù)配置
如有需要修改默認配置的時候,只需復制下面要修改的屬性到application.properties中,并修改成需要的值,如修改模板文件的擴展名,修改默認的模板路徑等。
支持JSP的配置
Spring Boot并不建議使用,但如果一定要使用,可以參考此工程作為腳手架
本文名稱:Spring Boot如何進行Web應(yīng)用的開發(fā)
URL地址:http://redsoil1982.com.cn/news27/98177.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站營銷、網(wǎng)站策劃、軟件開發(fā)、營銷型網(wǎng)站建設(shè)、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容