springboot配置@spring.profiles.active@配置

一 pom.xml配置如下:


        
            dev
            
                dev
            
            
                true
            
        
        
            prd
            
                prd
            
        
    

二 配置application.yml

application.yml中先配置一些公共的部分。然后配置需要分开的部分。

spring:
  profiles:
    active: @spring.profiles.active@
logging:
  config: "classpath:[email protected]@.xml"
  file: "logs/wsc-super-miner.log"
  pattern:
    console: "[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-5level [%t] [%logger - %line]: %m%n"
    file: "[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-5level [%t] [%logger - %line]: %m%n"
  level:
    root: INFO

三 创建不同的配置文件

现在profile环境有dev和prd。
需要创建文件 application-dev.yml、application-prd.yml和日志配置文件logback-dev.xml、logback-prd.xml
springboot的配置我需要分开的有mysql、redis还有端口。
所有application-dev.yml如下:

spring:
  redis:
    host: 127.0.0.1
    port: 6379
    password:
    lettuce:
      pool:
        max-active: 16
        max-idle: 16
        min-idle: 1
  # mysql
  datasource:
    url: "jdbc:mysql://127.0.0.1:3306/futuresdb_t?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&serverTimezone=Hongkong&useLegacyDatetimeCode=false"
    username: 
    password:
    type: "com.zaxxer.hikari.HikariDataSource"
    hikari:
      driver-class-name: "com.mysql.cj.jdbc.Driver"
      maximumPoolSize: 30
      minimumIdle: 5
server:
  port: 7777

至于application-prd.yml 根据自己的环境进行更换配置。
日志配置文件同理。
springboot配置@spring.profiles.active@配置_第1张图片

四 打包

1 打包的时候只需要进行如下图勾选 dev环境或者prd生产环境。
springboot配置@spring.profiles.active@配置_第2张图片
2 勾选好环境 点击lifecycle中的package或者install进行打包。
或者使用命令打包: mvn clean package -P prd; 指定环境进行打包(如果不指定,打包的还是pom.xml中的默认的环境dev)。
springboot配置@spring.profiles.active@配置_第3张图片
注意:切换环境后,本地启动的环境是成功切换了的。但是打包并没有。
在我成功切换环境prd后,仍然使用命令mvn clean package打包,本来我以为这样也可以打包成prd环境的,但结果是pom.xml中默认的环境dev(activeByDefault = true),所以需要在后面命令加参数 mvn clean package -P prd进行打包。

验证:打包完成后可去target/classes/application.yml中进行验证环境是否正确。

你可能感兴趣的:(Java)