1. 程式人生 > >SpringBoot2.0之六 多環境配置

SpringBoot2.0之六 多環境配置

        開發過程中面對不同的環境,例如資料庫、redis伺服器等的不同,可能會面臨一直需要修改配置的麻煩中,在以前的專案中,曾通過Tomcat的配置來實現,有的專案甚至需要手動修改相關配置,這種方式費時費力,出錯的概率還極大,SpringBoot為我們提供了更加簡單方便的配置方案來解決多環境的配置問題,下面我們看看怎麼實現。

一、新建一個專案(本文以上篇的程式碼為基礎)

紅框標示的即為本篇的重點,我們根據開發、測試、真實常見的三個環境分成了三個配置檔案,本篇以不同環境的資料庫配置不同為例進行介紹,配置資訊如下:

開發環境:

spring:  
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test

?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root

    password: 123456

測試環境:

spring:   
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://192.168.60.20:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root

    password: 123456

真實環境:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/prod?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root

    password: 123456

二、選擇使用對應的環境配置,只需要在application.yml中加上一個spring.profiles.active=test

,分別指定配置檔案的字尾就可以使用對應環境的配置了,具體配置如下

server:

  port: 8080

spring:  
  #指定配置環境
  profiles:

    active: test

       可能有人會疑問,如何才能快速指定當前使用的是那個環境的配置是否成功了,方法肯定是有的,細心的同學在專案啟動的時候肯定就發現,可以在日誌中看到對應的配置資訊,如果還不放心的同學就趕緊通過不同的資料庫資料來驗證吧。

三、啟動專案指定環境

        這對於開發過程我們已經能非常輕鬆的切換環境了,但是部署到各個環境是否也存在比較簡單的方式呢,答案是肯定的,下面我們來看看怎麼快捷部署不同的環境。

        我們平時啟動打包的jar包時,可能使用的是 java -jar myjavaapp.jar來啟動專案,如果我們需要制定特定的環境啟動只需要加上一個啟動屬性即可輕鬆完成一個jar在不同環境通用的效果了,具體如下:

java -jar myapp.jar --spring.profiles.active=dev

本文由明天的地平線創作,如想了解更多更詳細的內容,請關注一下公眾號,公眾號內將進行最新最實時的更新!