本小節,主要介紹一下 SpringBoot 目錄結構 及靜態文件加載。
1. SpringBoot 目錄結構,每層及的作用是什麼?
2. SpringBoot 2.x 靜態文件是如何加載的, 訪問html, js, css 這些靜態文件的時候,應該如何訪問?
靜態文件配置(官網參考鏈接): https://docs.spring.io/spring-boot/docs/2.1.4.RELEASE/reference/htmlsingle/#boot-features-spring-mvc-static-content
SpringBoot 目錄結構
src/main/java:存放代碼
src/main/resources
static: 存放靜態文件,比如 css、js、image, (訪問方式 http://localhost:8080/js/main.js)
templates:存放靜態頁面jsp,html,tpl
config:存放配置文件,application.properties
resources:
SpringBoot2.x 靜態文件訪問
Spring Boot 默認會挨個從
META/resources > resources > static > public 裏面找是否存在相應的資源,如果有則直接返回。
-
SpringBoot 優點之一就是它採用了“習慣優於配置”的設計範式,如果我們有一個好的習慣,那麼我們將省掉很多力氣,不用我們再自己去配置。 比如: 這個地方,我們把html 這些靜態文件,放到static 目錄下,那麼默認就是可以直接訪問的, 比如: http://localhost:8080/js/main.js
-
同時,如果我們想要自定義目錄,當然也是可以實現的,通過簡單的配置,告訴springboot, 掃描那些目錄,作爲靜態文件的目錄。配置如下:
# 我們可以通過這條配置,來自定義靜態資源路徑。
spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
補充: 當然靜態文件,我們一般建議是放在 CDN上的。