springboot框架(下)

禪~よし發表於2020-10-23

7.靜態資源

同步開發或者半分離開發的專案中。

springMVC中的靜態資源:

  • 在web.xml中配置名字叫default的servlet,對字尾.html.js.css.png.jpg都做對映。
  • 在springmvc.xml檔案裡mvc:default-servlet-handler
  • 在springmvc.xml檔案裡做靜態資源對映。<mvc:resources mapping="/static/**" location="/static/">

在springboot中預設提供了4個靜態資源目錄,推薦使用src/main/resources/static目錄做靜態目錄:

src/main/resources/META-INF/resources/, 優先順序最高
src/main/resources/resources/,
src/main/resources/static/, 
src/main/resources/public/   優先順序最低

8.歡迎頁

在四個靜態資源目錄下加index.html即可。按照優先順序查詢,查詢到就生效。

9.替換專案瀏覽器圖示

用的是外部tomcat:

​ 把favicon.ico放在root目錄

用的時內嵌tomcat:

​ 把favicon.ico放在靜態資源目錄即可。

10.thymeleaf模板引擎

同步開發中使用:

使用者請求服務端介面–>呼叫服務層程式碼–>得到資料–>把資料放在request作用域–>指定檢視名–>在檢視中使用模板技術從request中獲取資料–>模板語言把資料渲染生成靜態的html.

  • 在pom中引入thymeleaf啟動器:spring-boot-starter-thymeleaf
    • 該啟動器對應的預配置類中,配置ThymeleafViewResolver檢視解析器,對handler返回的字串進行拼接檢視名。

thymeleaf對比jsp:

jsp:編寫xx.jsp–>當使用者首次訪問xx.jsp–>jsp引擎負責生成xx.java類–>編譯器編譯為xx.class–>載入位元組碼到虛擬機器–>例項化物件,執行service方法,獲取資料,進行渲染,輸出純靜態的html字串給前端

thymeleaf:編寫xx.html–>首次訪問xx.html–>thymeleaf引擎負責載入該xx.html到記憶體–>解析模板語法獲取資料進行渲染,輸出純靜態的html給前端.

springboot不支援jsp,推薦使用thymleaf作為html動態模板語言.

如果改了檢視後,重新整理不生效,ctrl+F9

模板語法:

屬性表示式:${},專用來獲取request,session,servletContext物件中的資料:

request:[[${key}]]

sesison:[[${session.key}]]

servletContext:[[${#servletContext.getAttribute('key')}]]

連結表示式:@{},自動補全專案的根路徑。

<a th:href="@{/url(key=${},key=value)}">點我</a>

文件表示式:~{},頁面巢狀,寫文件名即可

th屬性:

th:text:結合屬性表示式使用,為雙標籤賦值

th:value:結合屬性表示式使用,給單標籤賦值。

th:src: 結合連結表示式使用

th:href:結合連結表示式使用

th:action:結合連結表示式使用

th:insert: 結合文件表示式使用,做頁面巢狀

th:replace:結合文件表示式使用,做頁面巢狀

th:fragment:結合文件表示式使用,做區域性頁面巢狀

th:each:結合屬性表示式獲取後端的集合資料,遍歷顯示資料。

相關文章