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

Springboot通过profiles切换不同环境使用的配置

文章目录

  • 简介
  • 1.通过分隔符隔离
  • 2.通过使用不同的配置文件区分
  • 3.测试

简介

一个项目从开发到上线一般要经过几个环境, dev测试环境-uat预生产环境-prod生产环境,每个环境的使用的数据库或者配置不同,这时候可以通过下面两种方式区分配置,达到快速切换的效果。

1.通过分隔符隔离

  • 1.在application.yml配置文件中可以通过 - - - 分隔不同环境的配置
  • 2.在隔离的配置中通过spring.profiles定义当前这段配置的环境名称,下面定义了dev和prod两个环境
spring:profiles:#选择指定的环境active: dev#-------------  dev配置  ---------------
---
spring:profiles: devversion: 1.0.1#-------------  prod配置  ---------------
---
spring:profiles: prodversion: 1.0.0

2.通过使用不同的配置文件区分

文件名的定义规则是: application-xxx.yml , xxx表示环境名称,为了兼容上面的分割符定义的两个环境,这里也创建了dev和prod两个环境的配置文件,两种方式可以混合使用,建议配置项多的时候还是用配置文件区分开。
在这里插入图片描述
只定义了一个spring.application.name属性,prod环境名称为test-prod,dev环境名称为test-dev
在这里插入图片描述

3.测试

@RestController
public class TestController {@Value("${spring.application.name}")public String appName;@Value("${version}")public String version;@GetMappingpublic String test() {return "appName="+appName+" , version="+version;}}

在这里插入图片描述
修改配置文件spring.profiles.active=prod再进行测试可以看到两种配置都生效了。
在这里插入图片描述

在这里插入图片描述

线上配置
在线上运行jar包的时候可以通过 --spring.profiles.active传入动态参数覆盖配置文件里的选项

java -jar xxx.jar --spring.profiles.active=prod
http://www.lryc.cn/news/272724.html

相关文章:

  • SpringBoot入门到精通-Spring Boot Jasypt Encrypt 演示
  • 整数的阶乘(英语:factorial)是所有小于及等于
  • 音视频通信
  • docker 搭建gitlab 恢复和备份
  • 尚硅谷2023版Promise教程从入门到实战(讲师:任安萍)
  • 【SpringBoot】分组校验和自定义校验
  • 19、BLIP-2
  • 【微服务核心】MyBatis Plus
  • 什么是Alibaba Cloud Linux?完全兼容CentOS,详细介绍
  • Spark---RDD算子(单值类型Value)
  • 数据库中的MVCC--多版本并发控制
  • wps将姓名处理格式为:姓**
  • 2023年我的编程之旅:技术演进与自我成长的纪录
  • 好用免费的WAF---如何安装雷池社区版
  • 看似 bug 又非 bug 的一个 bug
  • mysql常见问题
  • QT上位机开发(串口界面设计)
  • k8s之pod
  • 第二百四十三回 再分享一个Json工具
  • electron自定义菜单
  • 变量和函数提升(js的问题)
  • Excel 插件:ASAP Utilities Crack
  • hyperf 十九 数据库 二 模型
  • 使用python快速开发与PDF文档对话的Gemini聊天机器人
  • Spring Cloud Gateway集成Knife4j
  • Hive10_窗口函数
  • ipvsadm命令详解
  • zabbix通过自动发现-配置监控项、触发器(小白教程)
  • Dockerfile文件介绍
  • 【PHP】函数array_reduce()使用场景