springboot 靜態資源處理

2022-09-28 06:30:16 字數 2170 閱讀 5110

1 使用webjars方式匯入

webjars的本質就是以jar包的方式引入我們需要的靜態資源,之前匯入靜態資源,只需直接匯入即可,但在springboot中需要使用webjars,接下來演示使用webjars匯入jquery的過程

1.1 搭建乙個springboot專案

1.2 訪問webjars官網

1.3 尋找需要的資源

這裡我們在webjars官網中找到jquery的對應版本的pom依賴,並複製到專案的pom.xml中

org.webjars

jquery

3.4.1

1.4 檢視專案中webjars目錄結構目錄.確認成功匯入

1.5 啟動專案,訪問匯入的jquery

成功訪問到jquery

2 匯入自己的靜態資源

以下四個目錄中存放的靜態資源可以被識別 :

2.1 在這四個目錄中分別新建乙個 1.js 檔案

"public"
2.2 測試四個目錄的優先順序

啟動專案,訪問1.js

說明 classpath:/meta-inf/resources/ 優先順序最高,刪除這個檔案重啟伺服器,再次訪問1.js

說明classpath:/resources/ 優先順序第二高,,刪除這個檔案重啟伺服器,再次訪問1.js

說明classpath:/static/ 優先順序第三高,

classpath:/public/ 優先順序最低

2.3 總結

優先順序排序 : classpath:/meta-inf/resources/

> classpath:/resources/ > classpath:/static/(預設)

> classpath:/public/

classpath:/static/ 這個目錄在專案搭建時會自動生成,是靜態資源預設的目錄,推薦使用

3 自定義靜態資源路徑

上面的兩種靜態資源匯入方式,之所以能夠成功,是因為springboot自動配置了靜態資源訪問的路徑,如果我們在配置檔案中手動指定乙個靜態資源訪問的路徑,就會導致springboot自動配置的路徑失效,而採用我們手動配置的路徑,下面簡單測試一下

spring.web.resources.static-locations=/hello/.classpath:/lv/
這裡隨便指定了乙個路徑,注意上面建立1.js檔案並沒有刪除,在沒有指定靜態資源匯入路徑前是可以成功訪問的

3.2 重啟伺服器,訪問1.js

此時已經訪問不到1.js,證明springboot自動配置的路徑被覆蓋了,實際專案中盡量不要自定義靜態資源路徑,只使用springboot自動配置的即可

spring boot 靜態資源

springboot中,預設的靜態資源路徑有 配置在resourceproperties類中 private static final string classpath resource locations 優先順序 靜態資源路徑 例如 webmvcautoconfiguration自動裝配類中,可...

springboot載入靜態資源

使用springboot寫了簡單的web專案,頁面使用jsp檔案 但是靜態資源js 載入不到,看了下官方文件發現是因為路徑不對 所以專案靜態資源應該配置在根路徑下這四個資料夾中是可以直接訪問到的 meta inf resources,public,resources,static下的資源,對映路徑 ...

Spring Boot 靜態資源處理

在web開發中,靜態資源的訪問是必不可少的,如 js css 等資源的訪問。spring boot 對靜態資源訪問提供了很好的支援,基本使用預設配置就能滿足開發需求。spring boot 對靜態資源對映提供了預設配置 spring boot 預設將 所有訪問對映到以下目錄 classpath st...