springboot項(xiàng)目不同環(huán)境的配置讀取方式
一、首先我知道的是
springboot項(xiàng)目可以使用如下3種類型配置文件,并且可以同時(shí)存在。
springboot讀取到的不同配置內(nèi)容會(huì)進(jìn)行合并,如果有配置了相同的配置項(xiàng),則以如下優(yōu)先順序進(jìn)行生效:
application.properties > application.yml > application.yaml
二、相同類型配置文件
放在不同位置,生效優(yōu)先順序如下:
- 1級(jí): springboot-demo.jar同級(jí)目錄: config/application.yml[最高)
- 2級(jí): springboot-demo.jar同級(jí)目錄 : application.yml
- 3級(jí): classpath: config/application.yml
- 4級(jí): classpath: application.yml
三、在一個(gè)配置文件中
也可以配置如下不同的環(huán)境配置
#設(shè)置啟用的環(huán)境
spring:
profiles:
active: dev
---
spring:
profiles: dev
server:
port: 81
---
spring:
profiles: test
server:
port: 82
---
spring:
profiles: pro
server:
port: 83四、在application.yml文件中可以讀取到pom文件中的配置
可用于配置當(dāng)前環(huán)境
#設(shè)置啟用的環(huán)境
spring:
profiles:
active: ${profile.active}
---
spring:
profiles: dev
server:
port: 81
---
spring:
profiles: test
server:
port: 82
---
spring:
profiles: pro
server:
port: 83pom文件中的配置如下:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>utf-8</encoding>
<useDefaultDelimiters>true</useDefaultDelimiters>
</configuration>
</plugin><profiles>
<!--dev環(huán)境-->
<profile>
<id>dev</id>
<properties>
<profile.active>dev</profile.active>
</properties>
</profile>
<!--test環(huán)境-->
<profile>
<id>test</id>
<properties>
<profile.active>test</profile.active>
</properties>
</profile>
<!--pro環(huán)境-->
<profile>
<id>pro</id>
<properties>
<profile.active>pro</profile.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
</profiles>總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
POI導(dǎo)出Excel報(bào)錯(cuò)No such file or directory的解決方法
這篇文章主要為大家詳細(xì)介紹了POI導(dǎo)出Excel報(bào)錯(cuò)No such file or directory的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11
SpringBoot+WebSocket實(shí)現(xiàn)即時(shí)通訊功能(J2EE方式)
WebSocket是一種在單個(gè)TCP連接上進(jìn)行全雙工通信的協(xié)議,WebSocket使得客戶端和服務(wù)器之間的數(shù)據(jù)交換變得更加簡單,允許服務(wù)端主動(dòng)向客戶端推送數(shù)據(jù),本文給大家介紹了SpringBoot+WebSocket實(shí)現(xiàn)即時(shí)通訊功能(J2EE方式),需要的朋友可以參考下2025-01-01
java實(shí)現(xiàn)停車場(chǎng)系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)停車場(chǎng)系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11
Java內(nèi)存之happens-before和重排序
在JMM(Java內(nèi)存模型)中,如果一個(gè)操作執(zhí)行的結(jié)果需要對(duì)另一個(gè)操作可見,那么這兩個(gè)操作之間必須存在happens-before關(guān)系。下面小編來簡單介紹一下2019-05-05
Java 并發(fā)編程面試題Future 模式及實(shí)現(xiàn)方法
FutureTask是Future接口的一個(gè)實(shí)現(xiàn),常與Callable一起使用,CompletableFuture是Java8引入的,擴(kuò)展了Future的功能,支持異步任務(wù)的編排和組合,提供了更強(qiáng)大的函數(shù)式編程能力,這篇文章主要介紹了Java 并發(fā)編程面試題Future 模式及實(shí)現(xiàn)方法,需要的朋友可以參考下2025-04-04

