如果是一個web應用,在main下面會有個webapp,之前都是將所有頁面導在這里;現在springboot也有靜態資源放置的位置,但是有規定!
首先,了解一下靜態資源映射規則!
在idea界面double Shift鍵:搜索WebMvcAutoConfiguration,SpringMVC的web配置都在這個配置類里面,其中有一個方法:addResourceHandlers 添加資源處理

第一種靜態資源映射規則!
原始碼決議:看一下/webjars/**,都需要去 classpath:/META-INF/resources/webjars/ 找相對應的資源,Webjars本質就是以jar包的方式引入我們的靜態資源
比如要使用jQuery,我們只需引入jQuery對應版本的pom依賴即可!

查看webjars目錄結構

訪問:http://localhost:8080/webjars/jquery/3.4.1/jquery.js

第二種靜態資源映射規則!
可以在staticPathPattern發現第二種映射規則 :/** , 說明可以訪問當前專案的任意資源

它會去找 resourceProperties 的Resources類,我們可以點進去看一下分析:

它會去尋找資源的檔案夾,即陣列的內容,
優先級:resources>static(默認)>public
所以四個目錄存放的靜態資源可以被我們識別
比如訪問 http://localhost:8080/1.js即可以訪問出內容
自定義靜態資源路徑:在application.properties中配置;
spring.mvc.static-locations=classpath:/Long/**
一旦自己定義了靜態檔案夾的路徑,原來的自動配置就都會失效了!
現在我們來看看首頁是如何處理的,先去看看原始碼

繼續看getIndexHtml

訪問:http://localhost:8080/ 就會找靜態資源檔案夾下的 index.html

歡迎來我的Github:https://github.com/dragon-idea
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/304750.html
標籤:java
上一篇:Java方法(一)
