SpringBoot激活profiles的几种方式

news/2025/2/15 21:32:29/

多环境是最常见的配置隔离方式之一,可以根据不同的运行环境提供不同的配置信息来应对不同的业务场景,在SpringBoot内支持了多种配置隔离的方式,可以激活单个或者多个配置文件。

激活的profiles要在项目内创建对应的配置文件,格式为application-{profile}.yml

一、命令行方式

命令一:运行时指定,使用--spring.profiles.active

命令行方式是一种外部配置的方式,在执行java -jar命令时可以通过--spring.profiles.active=test 的方式进行激活指定的profiles列表。

使用方式如下所示:

java -jar xx-v1.0.jar --spring.profiles.active=dev --server.port=8080 &> xx.log &

命令二:打包时指定,使用 mvn -P

@profileActive@ 是配合 maven profile 进行选择不同配置文件进行开发

第一步:在 application.properties 中配置

spring.profiles.active=@profileActive@

第二步:在pom 中配置

<profiles><profile><id>dev</id><properties><profileActive>dev</profileActive></properties></profile><profile><id>prod</id><properties><profileActive>prod</profileActive></properties></profile>
</profiles>

 第三步:打包命令

mvn package -P prod -DskipTests

 个人不喜欢这种方式,麻烦。建议使用“命令一”的方式。

二、系统变量方式

Mac/Linux系统配置环境变量

编辑环境变量配置文件/etc/profile,添加名为SPRING_PROFILES_ACTIVE的环境变量,如下所示:

export SPRING_PROFILES_ACTIVE=dev

Windows系统配置环境变量

环境变量的配置方式请参考Java环境变量配置,新建一个名为SPRING_PROFILES_ACTIVE的系统环境变量,设置变量的值为dev即可。

在配置文件中读取环境变量,如下:

${SPRING_PROFILES_ACTIVE:dev}

三、配置文件方式

配置文件方式是最常用的方式,不过灵活性不强,局限性比较大,不建议使用这种方式来激活配置文件。

我们只需要在application.yml配置文件添加配置即可,使用方式如下所示:

spring:profiles:active: dev

四、Java系统属性方式

Java系统属性方式也是一种外部配置的方式,在执行java -jar命令时可以通过-Dspring.profiles.active=test的方式进行激活指定的profiles列表。

使用方式如下所示:

java -Dspring.profiles.active=dev -jar xx-v1.0.jar &> xx.log &

注意:-D方式设置Java系统属性要在-jar定义。

 五、补充说明

5.1 优先级

命令行方式 > Java系统属性方式 > 系统变量方式 > 配置文件方式

经过测试"命令行方式"的优先级最高,而"内部配置文件方式"则是最低的。

5.2 激活多个profile

如果需要激活多个profile可以使用逗号隔开,如:

--spring.profiles.active=dev,test

最后,建议大家在“生产环境”使用“命令行” 或 “系统环境变量"的方式来激活指定profile的配置。同样,端口也建议使用这两种方式来指定。


http://www.ppmy.cn/news/312843.html

相关文章

请完成设计配置计算机,平面设计师的电脑配置有什么要求?

专业平面设计对于电脑主机的要求非常高,首要的是CPU必须是多核心多线程,越多越好,同时要求CPU的主频尽可能的高。其次是内存的容量要大,一般不可低于16GB,最好是32GB以上。最后是存储系统数据读写速度要能跟得上。 平面设计用的电脑主要是运行photoshop这一类的软件。只要…

黑苹果2k显示器开启hidpi_黑苹果开启硬件加速

教程是从远景和tonymacx86上整理参考的,有一些资料是直接复制粘贴的,侵删 如何开启核显独显硬件编码加速和HEVC支持以及解决FCPX 10.13.X中的视频渲染问题 本方法通过开启核显独显硬件加速来解决FCPX软件问题及软件造成的系统问题,不用这些软件的朋友同样适用 很多人反应,系…

数据治理:元数据及元数据管理策略、方法和技术

数字化时代&#xff0c;企业需要知道它们有什么数据&#xff0c;数据在哪里、由谁负责&#xff0c;数据中的值意味着什么&#xff0c;数据的生命周期是什么&#xff0c;哪些数据安全性和隐私性需要保护&#xff0c;以及谁使用了数据&#xff0c;用于什么业务目的&#xff0c;数…

spyder pyecharts不显示_逆袭的IGZO-IPS小金刚!微星PAG272QRZ显示器评测:色域、响应速度更优秀...

一、前言&#xff1a;小金刚市场再添新选手 IGZO-IPS来了 过去几年&#xff0c;各大厂商围绕着27寸2K高刷新率IPS面板这一标准&#xff0c;推出了大量“小金刚”规格的电竞显示器。同时&#xff0c;群创、友达和LGD这些面板厂商也广为玩家群体所知晓。 尤其是群创K7b和友达2.6这…

spyder pyecharts不显示_逆袭的IGZOIPS!微星电竞显示器新品评测:色彩好且拖影少...

一、前言&#xff1a;小金刚市场再添新选手 IGZO-IPS来了 过去几年&#xff0c;各大厂商围绕着27寸2K高刷新率IPS面板这一标准&#xff0c;推出了大量“小金刚”规格的电竞显示器。同时&#xff0c;群创、友达和LGD这些面板厂商也广为玩家群体所知晓。 尤其是群创K7b和友达2.6这…

什么计算机玩游戏好,玩游戏最好的pc推荐 什么电脑玩游戏好

好玩游戏的电脑当然是要有好的配置拉。 如果你追求游戏效&#xff0c;那么我就大胆的说出满足你要求而又最经济&#xff0c;最具性价比的配置。 CPU AMD 速龙64位 3000&#xff0b;(E6)或者是3200&#xff0b; 主板 NVIDIA Nforce4系列主板(最好选华硕和微星&#xff0c;当然&a…

spyder pyecharts不显示_微星PAG272QRZ显示器好不好用 微星PAG272QRZ显示器全面评测_显示器_硬件教程...

微星PAG272QRZ显示器怎么样&#xff1f;性能如何&#xff1f;好不好用&#xff1f;值得入手吗&#xff1f;下面小编带来微星PAG272QRZ显示器全面评测&#xff0c;希望对大家有所帮助。 微星PAG272QRZ显示器全面评测&#xff1a; 一、前言&#xff1a;小金刚市场再添新选手 IGZO…

春招后,功能测试还能找到工作了吗?

在一线大厂&#xff0c;没有测试这个岗位&#xff0c;只有测开这个岗位。这几年&#xff0c;各互联网大厂技术高速更新迭代&#xff0c;软件测试行业也正处于转型期。传统的功能测试技术逐步淘汰&#xff0c;各种新的测试技术层出不穷&#xff0c;测试人员的薪资也水涨船高。与…