前言

profile用于多环境的激活和配置,用来切换生产,测试,本地等多套不通环境的配置。如果每次去更改配置就非常麻烦,profile就是用来切换多环境配置的。

第一节、配置文件优先级

appliacation.properties>appliacation.yml>application.yaml
相同配置参数,优先级高的生效。

第二节、配置方式

1. 多profile文件

application.properties

#控制激活指定后缀的文件,此时application-prod.properties文件会被激活
spring.profiles.active=prod

application-dev.properties 开发

server.port=8081

application-prod.properties 生产

server.port=8082

application-test.properties 测试

server.port=8083

注:yml和properties可以互通,application.properties可以激活yml后缀的配置文件,同样application.yml也可以激活application.properties文件。

在这里插入图片描述

2. yml多文档

#多文档配置方式(不推荐)
spring:
  profiles: test
server:
  port: 9081
--- #分割必须是三个横线,不能多不能少
spring:
  profiles: dev
server:
  port: 9082
--- #分割必须是三个横线,不能多不能少
spring:
  profiles: prod
server:
  port: 9083
--- #分割必须是三个横线,不能多不能少
spring:
  profiles:
    active: prod #激活使用spring.profiles=prod的配置块

在这里插入图片描述

第三节、激活方式

1. 配置文件(前面一直在用的)

  spring.profile.active=dev

2. 虚拟机参数VM options

-Dspring.profiles.active=test

在这里插入图片描述
在这里插入图片描述

3. 命令行参数(program arguments)

--spring.profiles.active=dev

在这里插入图片描述
在这里插入图片描述

4. 激活顺序优先级

 命令行参数  >  虚拟机参数  >   配置文件

第四节、运行时指定配置

  1. 打包项目mvn package
    在这里插入图片描述
  2. 运行项目(以下三个命令之一即可)
#打包的配置文件里的默认激活方式
java -jar .\springboot-profile04-0.0.1-SNAPSHOT.jar
#激活dev配置文件运行项目(项目参数)
java -jar .\springboot-profile04-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev
#激活test配置文件运行项目(虚拟机参数)
java -jar -Dspring.profiles.active=test .\springboot-profile04-0.0.1-SNAPSHOT.jar 

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐