zoukankan      html  css  js  c++  java
  • SpringBoot配置-profile的使用

    前言:在实际开发时,我们可能会有开发环境、测试环境、生产环境,这三个环境的配置信息会不同(数据库连接信息、数据库连接池配置等)。SpringBoot提供了profile功能,可以通过核心配置文件进行动态配置切换。

    由于SpringBoot有两种配置文件格式,profile在实现上也有区别。
    1、 .properties;
    2、 .yml(.yaml);

    在.properties格式配置文件中实现动态切换配置的功能:

    一、SpringBoot项目默认启动时,控制台日志提示了未设置profile激活功能

    二、.properties格式配置文件设置三个子配置文件

    三、三个子配置文件application-dev.properties、application-test.properties、application-pro.properties中分别设置server.port=8081、server.port=8082、server.port=8083,此时我们继续启动程序,发现虽然我们在三个子配置文件中分别设置了中间件(tomcat)的端口,但是都未生效。

    四、此时,我们在核心配置文件application.properties中设置属性spring.profiles.active=dev,再启动程序,发现application-dev.properties被激活了,启动端口号也修改为子配置文件设置的端口号。

    五、按照上述方法,在核心配置文件application.properties中设置属性spring.profiles.active=test,再启动程序

    如此,便在application.properties中实现了使用profile动态切换配置的功能

    在.yml格式配置文件中实现动态切换配置的功能

    一、先将.properties文件中的设置都注释掉,否则.yml由于加载优先级低,不会生效。.yml格式的配置文件新增了一个属性,此属性在.properties文件中并没有,可以通过IDE提示验证

    二、在一个文件中使用--- 进行隔离不同的配置

    spring:
      profiles:
        active: dev
    ---
    spring:
      profiles: dev
    server:
      port: 8091
    ---
    spring:
      profiles: test
    server:
      port: 8092
    ---
    spring:
      profiles: pro
    server:
      port: 8093
    

    三、测试可知

    profile激活方式
    上述介绍的主要是配置方式,激活方式是通过配置文件的spring.profiles.active属性实现了,还有两种激活配置文件的方式

    通过设置虚拟机参数

    一、虚拟机参数,打开IDEA相关设置

    二、设置虚拟机启动参数,参数值为-D:spring.profiles.active=pro(-D为固定写法)

    三、启动程序,测试结果

    通过设置应用程序参数

    一、设置应用程序参数,参数前使用两个杠杠--

    二、启动测试效果

    通过设置命令行参数,启动程序

    通过IDEA启动SpringBoot项目,我们可以切换配置,实际工作中,可以通过打成可执行jar,启动程序时,设置命令行启动参数,实现动态切换配置

    一、打可执行的jar包

    二、命令行中,启动程序(java -jar springboot-profiles-0.0.1-SNAPSHOT.jar --spring.profiles.active=pro)

    三、测试结果

  • 相关阅读:
    unbuntu系统下在文件中按上下左右出现错误码
    构建之法阅读笔记
    cloudera卸载
    第二阶段团队站立会议04
    第二阶段团队站立会议03
    第二阶段团队站立会议02
    第二阶段团队站立会议01
    团队测试
    cnblogs.com的用户体验
    对于每个小组的意见
  • 原文地址:https://www.cnblogs.com/elnimo/p/13779443.html
Copyright © 2011-2022 走看看