欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringBoot配置Profile多环境支持

程序员文章站 2022-04-30 13:58:52
...

前些天,有一个需求要用SpringBoot的多环境,当时没有系统学习springboot ,所以在网上找来找去的找到了一个解决方案,并写了一篇文章用来记录---(springBoot项目如何启动多个实例),但是那篇文章介绍的并不全面.刚好今天学习了springboot的多环境配置,于是趁着刚学习完,拿这篇全面的讲解多环境配置,同时也用来复习巩固。

            Profile

1.多Profile文件

     我们在主配置文件编写的时候,文件名可以是  application-{profile}.yml或者application-{profile}.properties ,都行,以下用yml为主。以下主配置文件表示 application.yml

eg.

   编写一个名为 application-dev.yml文件:

server:
  port: 8081

    编写一个名为application-prod.yml文件:

server:
  port: 8082

先启动springboot项目,发现启动的端口为 81(application.yml中指定的端口为 81) ,也就是说默认启动的是application.yml的环境。

2. yml支持多文档块方式

 配置文件中也支持使用多文档块的方式创建多环境,是用 --- (三个-)表示一个文档块 ,如果不指定启动别的文档块,默认启动第一个文档块,可以通过  spring.profiles.actice=dev 来指定启动别的文档块。使用图解说明如下:

SpringBoot配置Profile多环境支持

 

3. **指定的profile

   1.在配置文件(application.yml)中指定spring.profiles.actice: dev(在sts中yml文件中会自动提示,并自动缩进)。

   2. 使用命令行的方式**:如下所示:

1)可以在编辑器idea,eclipse的run configurations中指定参数  --spring.profiles.active=dev

  SpringBoot配置Profile多环境支持

 

SpringBoot配置Profile多环境支持

SpringBoot配置Profile多环境支持

2) 将项目打成jar包 ,然后启动dos命令行的方式: 

SpringBoot配置Profile多环境支持

3)使用虚拟机参数方式:

   -Dspring.profiles.active=dev          注意:-D是固定写法

SpringBoot配置Profile多环境支持

 

以上就是springboot配置多环境并启动的几种方式,较之前写的更加详细。我使用的ide是IDEA ,eclipse和sts配置参数也在run configurations中,希望能够帮到你。