当前位置: 首页 > news >正文

spring.profiles.active配置的作用

1. spring.profiles (或文件名中的 ?):定义配置的名称

这是声明一段配置属于哪个 Profile。

  • 在同一个 application.yml 中:使用 spring.profiles 键来为一个配置段打上标签。

    yaml

    spring:profiles: dev # 【定义】这个配置段的名称是‘dev’
    server:port: 9090
  • 在独立的配置文件中:通过文件命名规则 application-{profile}.yml 来定义。

    • 文件 application-prod.yml -> 【定义】这个文件里的所有配置都属于 prod Profile。

    • 文件 application-database.yml -> 【定义】这个文件里的所有配置都属于 database Profile。

关键: 这只是在“准备”配置,它们此时并不会自动生效


2. spring.profiles.active激活指定的配置名称

这是命令Spring去加载并使用那些已被定义的配置。

  • 作用:告诉Spring Boot:“请去找到所有名为 [值] 的配置(无论是在主文件里的段还是独立文件),并把它们激活,与默认配置合并。”

  • 示例

    • spring.profiles.active=dev -> 【激活】所有定义名为 dev 的配置。

    • spring.profiles.active=prod,database -> 【激活】所有定义名为 prod 和 database 的配置(可以同时激活多个,用逗分隔)。


工作流程类比

您可以把它想象成一个电视台电视遥控器

  1. 电视台 (spring.profiles / 文件名)

    • 各个电视台(如CCTV-1, CCTV-5)一直在播放不同的节目(不同的配置)。

    • 它们定义了自己是谁(spring.profiles: cctv1)。

  2. 遥控器 (spring.profiles.active)

    • 你手里的遥控器决定激活哪个电视台的信号到你的电视机上。

    • 你按下“CCTV-5”(spring.profiles.active=cctv5),你的电视就播放CCTV-5的节目。

  3. 默认频道 (application.yml)

    • 即使你不按遥控器,电视也有一个默认频道(默认配置)在播放。

总结对比表

特性配置项/文件作用类比
定义/声明spring.profiles (在YAML段中)声明这段配置属于哪个Profile电视台的台标和频道
application-{profile}.yml (文件名)声明这个文件里的配置属于哪个Profile
激活/使用spring.profiles.active命令Spring去启用哪些已定义的Profile电视遥控器

所以,您的两句话完美地概括了整个过程:

  • spring.profiles=? 是用来定义当前配置的名称。

  • spring.profiles.active=? 是用来指定要激活的配置名称。

http://www.dtcms.com/a/366878.html

相关文章:

  • 设计模式六大原则2-里氏替换原则
  • 短视频运营为什么需要代理 IP
  • JS函数进阶
  • 【可信数据空间-连接器状态监控】
  • 【面试题】如何构造排序模型训练数据?解决正负样本不均?
  • matlab实现希尔伯特变换(HHT)
  • 批量获取1688商品详情图及API接口调用实操指南
  • 【Kubernetes】知识点4
  • 卫生间异味来源难察觉?这款传感器为你精准探测并预警
  • 从设计到落地:校园图书馆系统的面向对象实现全流程
  • 多个docker compose启动的容器之间通信实现
  • Oracle 数据库如何查询列
  • (论文速读)Navigation World Models: 让机器人像人类一样想象和规划导航路径
  • 子串:最小覆盖子串
  • 深度学习中的学习率优化策略详解
  • UE5 制作游戏框架的部分经验积累(持续更新)
  • Kubernetes知识点(三)
  • AWS中为OpsManage配置IAM权限:完整指南
  • 深入剖析Spring Boot / Spring 应用中可自定义的扩展点
  • 力扣654:最大二叉树
  • AI+Java 守护你的钱袋子!金融领域的智能风控与极速交易
  • .NET 开发者的“Fiddler”:Titanium.Web.Proxy 库的强大魅力
  • 以数据与自动化驱动实验室变革:智能化管理整体规划
  • “乾坤大挪移”:耐达讯自动化RS485转Profinet解锁HMI新乾坤
  • 数据安全章节考试考点及关系梳理
  • Hadoop(七)
  • 服务器数据恢复—服务器断电,RAID数据恢复大揭秘
  • Python - 通用滑块验证码识别库 Captcha-Recognizer
  • MySQL复制技术的发展历程
  • 【论文阅读—深度学习处理表格数据】ResNet-like FT Transformer