詳解Spring Boot 目錄文件結(jié)構(gòu)
1.目錄結(jié)構(gòu)
src/main/java:存放代碼
src/main/resources
- resources:(Spring Boot 默認(rèn)的)存放資源文件
- static:(Spring Boot 默認(rèn)的)存放靜態(tài)文件,比如 css、js、image, (訪問方式 http://localhost:8080/js/main.js)
- public:(Spring Boot 默認(rèn)的)存放公共文件
- templates:(用戶自己定義的,可以隨便取名,但這里使用公認(rèn)的文件名)存放靜態(tài)頁面,比如 jsp、html、tpl
- config:(用戶自己定義的,可以隨便取名,但這里使用公認(rèn)的文件名)存放配置文件,比如 application.properties

2.同個(gè)文件的加載順序,靜態(tài)資源文件
Spring Boot 默認(rèn)會(huì)挨個(gè)從 META/resources > resources > static > public 里面找是否存在相應(yīng)的資源,如果有則直接返回。
比如:我們?cè)谶@幾個(gè)文件夾下都新建一個(gè) js 文件,看它會(huì)去加載哪個(gè)文件。

地址欄輸入以下地址:http://localhost:8080/test.js,這里我們沒有在 resources 文件夾下建 test.js 文件,所以會(huì)去加載 static 文件夾下面的文件

上圖所示,我們新建了一個(gè) templates 文件夾,里面新建了一個(gè) index.html 文件,因?yàn)?templates 不是 Spring Boot 默認(rèn)文件夾,所以我們?cè)L問不到這個(gè)文件夾里的文件,即使其他文件夾沒有同名文件。
要想訪問,需要引入依賴(注意:如果不引人這個(gè)依賴包,html 文件應(yīng)該放在默認(rèn)加載文件夾里面,比如 resources、static、public 這個(gè)幾個(gè)文件夾,才可以訪問)
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
寫一個(gè)測(cè)試映射
@RequestMapping(value = "/api/v1/gopage")
public Object index() {
return "index";
}
輸出效果

Spring Boot 給我們定義了一些默認(rèn)資源文件夾及其加載順序,但如果用戶新增了一些自定義文件夾或者是想改變資源文件的加載順序,可以在根目錄下,新建一個(gè) application.properties。

可以自己設(shè)置加載順序,也可以添加自己新增的文件夾,如果用戶自己新增 application.properties,則Spring Boot會(huì)去讀這個(gè)文件來決定默認(rèn)文件夾及其加載順序

以上就是詳解Spring Boot 目錄文件結(jié)構(gòu)的詳細(xì)內(nèi)容,更多關(guān)于Spring Boot 目錄文件結(jié)構(gòu)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
spring Retryable注解實(shí)現(xiàn)重試詳解
這篇文章主要介紹了spring Retryable注解實(shí)現(xiàn)重試詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09
SpringBoot項(xiàng)目中Druid自動(dòng)登錄功能實(shí)現(xiàn)
Druid是Java語言中最好的數(shù)據(jù)庫(kù)連接池,Druid能夠提供強(qiáng)大的監(jiān)控和擴(kuò)展功能,這篇文章主要介紹了SpringBoot項(xiàng)目中Druid自動(dòng)登錄功能實(shí)現(xiàn),需要的朋友可以參考下2024-08-08
SpringBoot整合RabbitMQ處理死信隊(duì)列和延遲隊(duì)列
這篇文章將通過示例為大家詳細(xì)介紹SpringBoot整合RabbitMQ時(shí)如何處理死信隊(duì)列和延遲隊(duì)列,文中的示例代碼講解詳細(xì),需要的可以參考一下2022-05-05
Java中隊(duì)列(Queue)和列表(List)的區(qū)別解析
Java中的列表(List)和隊(duì)列(Queue)是兩種常用的數(shù)據(jù)結(jié)構(gòu),它們分別用于不同的場(chǎng)景,列表是有序的,支持隨機(jī)訪問,允許重復(fù)元素,并且可以通過索引插入或刪除元素,下面通過本文給大家介紹Java中隊(duì)列(Queue)和列表(List)的區(qū)別,感興趣的朋友一起看看吧2025-03-03
SpringCloud?Gateway之請(qǐng)求應(yīng)答日志打印方式
這篇文章主要介紹了SpringCloud?Gateway之請(qǐng)求應(yīng)答日志打印方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
JetBrains?發(fā)布下一代?IDE無比輕量幾秒就能啟動(dòng)干活
雖然?JetBrains?公司說?Fleet?的定位和目標(biāo)并不是代替其他?IDE,但個(gè)人覺得,?如果?Fleet?火起來了,其他?IDE?就會(huì)黯然失色,特別是多語言開發(fā)者,誰愿意裝多個(gè)?IDE?呢?到時(shí)候,可能?JetBrains?以后的所有?IDE?要一統(tǒng)江湖了2021-12-12
Java實(shí)現(xiàn)批量導(dǎo)出導(dǎo)入數(shù)據(jù)及附件文件zip包
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)批量導(dǎo)出導(dǎo)入數(shù)據(jù)及附件文件zip包的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一2022-09-09
Java項(xiàng)目中大批量數(shù)據(jù)查詢導(dǎo)致OOM的解決
本文主要介紹了Java項(xiàng)目中大批量數(shù)據(jù)查詢導(dǎo)致OOM的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06

