Idea启动springboot项目的时候如何指定配置文件?

前言:

我们在使用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位小伙伴在等你们啦,感兴趣的就赶紧来点击关注我把,哪里有不明白或有不同观点的地方欢迎留言!

总结:

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页