Spring Boot 之 激活 Profile

       在整个项目的项目周期中,会经历很多项目阶段,比如开发阶段、测试阶段、SIT阶段、UAT阶段以及交付生产,不同的阶段,项目在配置细节上都需要不同的配置信息,比如日志等级,开发阶段是DEBUG级别,交付生产后需要是INFO级别等。如果每次都手动切换这些配置,必然给开发人员带来不必要的重复工作,甚至有可能出错。而Spring Boot 在这方面很大的改善和优化,下面我们具体说说:

     Spring 框架从Spring3.1 开始支持基于Profile的配置,这是一种条件化配置,基于运行时激活的Profile,会使用或者忽略不同的Bean或者配置类。

    假如我们的项目有两个阶段:开发阶段(简称:DEV)和生产运行阶段(简称:PROD),在开发阶段,服务器的端口号为8080,生产阶段的端口号为9080,同时开发阶段不需要对做安全限定,采用默认的安全策略,如果是生产环境,则启用安全配置,基于这样的场景我们再Spring Boot 中应该怎样实现呢?

    首先,我们在application.properties配置文件的基础上,增加两个配置文件application-dev.properties和application-prod.properties配置文件

在application.properties 文件中设置

spring.profiles.active=prod

用于配置启动时激活的Profile模式

在application-dev.properties中设置

server.port=8080 

在 application-prod.properties设置

server.port=9080

由于我们激活的Profile为生产模式,即prod,所以启动后应用的服务端口为9080

查看启动日志:

激活的Profile

目前的端口号:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章