前些天,有一個需求要用SpringBoot的多環境,當時沒有系統學習springboot ,所以在網上找來找去的找到了一個解決方案,并寫了一篇文章用來記錄---(springBoot項目如何啟動多個實例),但是那篇文章介紹的并不全面.剛好今天學習了springboot的多環境配置,于是趁著剛學習完,拿這篇全面的講解多環境配置,同時也用來復習鞏固。
Profile
1.多Profile文件
我們在主配置文件編寫的時候,文件名可以是 application-{profile}.yml或者application-{profile}.properties ,都行,以下用yml為主。以下主配置文件表示 application.yml
eg.
編寫一個名為 application-dev.yml文件:
1
2
|
server: port: 8081 |
編寫一個名為application-prod.yml文件:
1
2
|
server: port: 8082 |
先啟動springboot項目,發現啟動的端口為 81(application.yml中指定的端口為 81) ,也就是說默認啟動的是application.yml的環境。
2. yml支持多文檔塊方式
配置文件中也支持使用多文檔塊的方式創建多環境,是用 --- (三個-)表示一個文檔塊 ,如果不指定啟動別的文檔塊,默認啟動第一個文檔塊,可以通過 spring.profiles.actice=dev 來指定啟動別的文檔塊。使用圖解說明如下:
3. 激活指定的profile
1.在配置文件(application.yml)
中指定spring.profiles.actice: dev(在sts中yml文件中會自動提示,并自動縮進)。
2. 使用命令行的方式激活:如下所示:
1)可以在編輯器idea,eclipse的run configurations中指定參數
--spring.profiles.active=dev
2)將項目打成jar包 ,然后啟動dos命令行的方式:
3)使用虛擬機參數方式:
-Dspring.profiles.active=dev 注意:-D是固定寫法
上面就是springboot配置多環境并啟動的幾種方式,較之前寫的更加詳細。我使用的ide是IDEA ,eclipse和sts配置參數也在run configurations中,希望能夠幫到你。
以上僅為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/m0_37564404/article/details/81948506