springboot多環(huán)境配置方案(不用5分鐘)
一 前言
本篇文章的主題是在springboot中寫多個配置文件,指定讓個配置文件生效,以便于達到在開發(fā)環(huán)境,測試環(huán)境,線上環(huán)境根據(jù)不同的配置靈活應(yīng)用;讀完本篇你將獲得,學會springboot的多環(huán)境配置;學會使用idea配置虛擬機參數(shù)啟動不同的配置文件;學會使用jar包運行并且指定不同的配置文件等;
二 激活方式一
spring框架內(nèi)部提供了2中方式用于加載YAML文檔,以供啟動時讀取配置文件;YamlPropertiesFactoryBean
會 加載 YAML 變?yōu)?Properties;YamlMapFactoryBean
會 轉(zhuǎn)換 YAML 為map;使用YAML更加簡便不用擔心內(nèi)部具體如何轉(zhuǎn)換;
2.1pom.xml
引入依賴boor-start依賴和打包插件;jdk1.8版本,boot2.1.1;
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.1.RELEASE</version> <relativePath/> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
2.2 application.yml
一切從簡,知識追尋者不會在配置文件中寫其他內(nèi)容,就指定端口即可,用于區(qū)別不同的環(huán)境;其中配置開發(fā)環(huán)境為dev,生產(chǎn)環(huán)境為pro;默認激活dev 環(huán)境;
# 激活配置 spring: profiles: active: dev --- # 配置一 開發(fā)環(huán)境 spring: profiles: dev server: port: 8060 --- # 配置二 生產(chǎn)環(huán)境 spring: profiles: pro server: port: 8061
2.3 controller
controller一個hell方法,用于瀏覽器測試;
@RestController public class ZSZXZ { @GetMapping("zszxz") public String hello(){ return "hello 知識追尋者"; } }
2.4 啟動類
啟動類添加@SpringBootApplication注解,表名是個springboot應(yīng)用,會進行自動配置;
/** * @Author lsc * <p> 多環(huán)境配置 </p> */ @SpringBootApplication public class ProfileApp { public static void main(String[] args) { SpringApplication.run(ProfileApp.class,args); } }
2.5 dev執(zhí)行結(jié)果
啟動工程,打開瀏覽器路徑如下,端口是8086,說明默認激活dev環(huán)境已經(jīng)成功
http://localhost:8060/zszxz
2.6 pro執(zhí)行結(jié)果
application.yml中修改激活環(huán)境為pro后重啟工程,修改瀏覽器端口,執(zhí)行結(jié)果如下說明配置成功;
# 激活配置 spring: profiles: active: pro
http://localhost:8061/zszxz
執(zhí)行結(jié)果
三 激活方式二
3.1 application.yml
去除application.yml中激活方式,知識追尋者改用idea配置VM參數(shù)選項方式進行激活;
--- # 配置一 開發(fā)環(huán)境 spring: profiles: dev server: port: 8060 --- # 配置二 生產(chǎn)環(huán)境 spring: profiles: pro server: port: 8061
3.2 idea配置VM參數(shù)
在VM選項中輸入-Dspring.profiles.active=dev
,表示激活dev環(huán)境;然后重啟工程訪問即可
四 項目部署方式
將工程打包成jar包,在cmd中如下命令執(zhí)行,如果包名不同請?zhí)鎿Q,然后瀏覽器訪問即可;
java -jar springboot-profile-1.0-SNAPSHOT.jar --Dspring.profiles.active=dev
五 多配置文件方式
上面的配置文件都寫在一個application.yml中,過于累贅,為了方便查閱和解耦合,推薦多個配置文件方式,然后在主配置文件中激活,具體的步驟如下;
5.1 application-zszxz.yml
新建yml文件名為application-zszxz.yml;內(nèi)容如下
server: port: 8061
5.2 application-test.yml
新建yml文件名為application-test.yml;內(nèi)容如下
server: port: 8060
5.3 application.yml
修改application.yml內(nèi)容如下
spring: profiles: active: zszxz
5.4 啟動后結(jié)果
http://localhost:8061/zszxz 啟動后結(jié)果 與之前一致,不再貼圖浪費資源;
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
淺談JAVA 線程狀態(tài)中可能存在的一些誤區(qū)
這篇文章主要介紹了淺談JAVA 線程狀態(tài)中可能存在的一些誤區(qū),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-04-04Java行為型設(shè)計模式之外觀設(shè)計模式詳解
外觀模式為多個復雜的子系統(tǒng),提供了一個一致的界面,使得調(diào)用端只和這個接口發(fā)生調(diào)用,而無須關(guān)系這個子系統(tǒng)內(nèi)部的細節(jié)。本文將通過示例詳細為大家講解一下外觀模式,需要的可以參考一下2022-11-11