springboot profile

针对不同的开发、测试、生产环境使用不同的配置

配置方式

  • 在同一个文件中配置多个配置

同一个文件以 ---分割,在不同的环境中的指定不同的spring.profiles 名称

#默认的配置端口
server:
  port: 8880
#需要使用的配置文件
spring:
  profiles:
    active: prod
---
#dev的环境
server:
  port: 8881
spring:
  profiles: dev
---
#prod的环境
server:
  port: 8882
spring:
  profiles: prod
  • 在不同文件中配置

创建不同的application-[spring.profiles名称].yml,在application.yml中的spring.profiles.active中指定要启动的配置文件。

  • 注解@Profile
    使用范围: @Configuration、@Component、@Service、@Controller、@Repository
    针对不同的配置环境,进行生效
@Service
@Profile({"prod","default"}) // 只针对prod和default环境的配置生效

启动不同配置的方式

  • 在application.yml中指定启动环境
spring:
  profiles:
    active: prod
  • 命令行运行指定启动环境的方式
java -jar .\spring.jar --spring.profiles.active=prod
  • 虚拟机的启动方式

在VM options中指定参数

-Dspring.profiles.active=prod

完!