前言:
我們在使用springboot項目開發的時候,可能會遇到這樣一種情況,每次切換環境跑項目的時候,都得修改配置文件的數據庫地址,這樣來回修改感覺很麻煩,所以今天就分享下如何設置多個配置文件,並且用idea啓動時指定配置文件。
正文:
有兩種配置方式,第一種就是配置多個yml文件,第二種就是在一個yml裏配置寫多個配置
一、配置多種環境的yml文件
其實各個環境的配置,大部分相同,主要是數據庫和一些中間件訪問的ip和端口有變化。
開發環境:application-dev.yml
# 配置端口
server:
port: 8989
spring:
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
測試環境:application-test.yml
# 配置端口
server:
port: 8989
spring:
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://192.168.124.193:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
生產環境:application-pro.yml
# 配置端口
server:
port: 8989
spring:
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://192.168.124.193:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
二、一個yml文件寫多個環境的配置
在一個yml文件中,可用連續三個連字號(---)區分多個文件,所以一個application.yml文件也可以完成環境切換了。
spring:
profiles:
active: dev
---
# 配置端口
server:
port: 8989
spring:
profiles: dev
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
---
# 配置端口
server:
port: 8989
spring:
profiles: test
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
---
# 配置端口
server:
port: 8989
spring:
profiles: pro
# 配置數據源
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/bendi?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
二、idea指定某種環境下的配置文件啓動項目
1.多個配置文件,啓動項目的時候,需要修改右上角的配置信息,按下圖操作
--spring.profiles.active=test
在啓動日誌裏看到下圖所示的日誌,便代表指定配置文件啓動成功。
2.單個配置文件啓動項目的時候,只需要在active後面指定 dev或者test即可
在啓動日誌裏看到下圖所示的日誌,便代表指定配置文件啓動成功。
總結:
天氣逐漸變熱,大家注意好防曬,要不年齡大了很容易出現老年斑,曬傷是不可逆的。今天的文章風格仍然是簡確用(簡單確實有用)風格。
我是阿達,一名喜歡分享知識的程序員,時不時的也會荒腔走板的聊一聊電影、電視劇、音樂、漫畫,這裏已經有7574位小夥伴在等你們啦,感興趣的就趕緊來點擊關注我把,哪裏有不明白或有不同觀點的地方歡迎留言!