springboot--多环境配置快速切换开发、测试、生产环境

news2024/11/26 16:24:21

多环境配置快速切换开发、测试、生产环境

  • 前言
  • 1、使用
    • 1.1指定环境@Profile({"dev","test"})
    • Spring Profiles 提供一个隔离配置的方式,使其仅在特定环境生效 任何@Component,@Configuration或@ConfigurationProperties 可以使用@Profile标记,来指定何时被加载。(容器中的组件都可以被@Prefile标记)
    • 1.2环境激活
      • 1.2.1、配置文件激活
      • 1.2.3、通过启动文件激活
  • 2、Profiles 分组
  • 3、Profile配置文件

前言

环境隔离能力,快速切换开发、测试、生产环境
步骤:
1、标识环境:指定那些组件、配置在那个生效
2、切换环境:这个环境对应的所有组件和配置就应该生效

1、使用

1.1指定环境@Profile({“dev”,“test”})

Spring Profiles 提供一个隔离配置的方式,使其仅在特定环境生效
任何@Component,@Configuration或@ConfigurationProperties 可以使用@Profile标记,来指定何时被加载。(容器中的组件都可以被@Prefile标记)

区分出几个环境:dev(开发环境)、test(测试i环境)、prod(生产环境)、default(默认环境)
指定每个组件在那个环境下生效
在这里插入图片描述
设置环境之后运行报错 因为目前使用的是默认环境所以找不到Cat了 需要使用try和catch
在这里插入图片描述

在这里插入图片描述

1.2环境激活

1.2.1、配置文件激活

#指定激活环境
spring.profiles.active=dev

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#指定激活环境
#spring.profiles.active=dev

#指定默认环境
#spring.profiles.default=default

#包含指定环境,不管你激活那个环境都有,总是要生效的环境
spring.profiles.include=dev,test

1.2.3、通过启动文件激活

在这里插入图片描述
在这里插入图片描述

2、Profiles 分组

生产环境=激活的环境/默认环境+包含的环境
项目中使用:
基本配置:比如日志log,mybatis 等写到包含环境中
需要动态切换变化的db\redis:写到激活的环境中

#分组
spring.profiles.active=haha
spring.profiles.group.haha = dev,test

spring.profiles.group.haha[0]=dev
spring.profiles.group.haha[1]=test

3、Profile配置文件

application.properties:主配置文件,任何环境下都生效
其他profile环境下命名规范:application-{profile标识}.properties
比如:
appliction-dev.properties

激活指定环境即可:配置文件激活、命令行激活
效果:
项目的说有生效配置向= 激活环境配置文件的说有项+主配置文件和激活文件不冲突的所有项
如果发生配置冲突,以激活的环境配置文件为准
application-{profile标识}。properties 优先级 application.properties
主配置和激活的配置都生效,优先以激活的配置为准
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1162345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

11.2树的高度,表达式树,非递归遍历,层序遍历,奇偶树

课上 前序,根左右 中序,左根右 若前序中序相同,则树都没有左节点 求树的高度 表达式树 中缀表达式树 主要考虑括号问题 这个就是考虑递归底层,要结束时的情形;以及根节点的情形; 由于表达式树是满树&…

数据库实验:SQL的数据定义与单表查询

目录 实验目的实验内容实验要求实验过程实验步骤实例代码结果示意 数据库的实验,对关系型数据库MySQL进行一些实际的操作 实验目的 (1) 掌握DBMS的数据定义功能 (2) 掌握SQL语言的数据定义语句 (3) 掌握RDBMS的数据单表查询功能 (4) 掌握SQL语言的数据单表查询语句…

UN38.3认证和MSDS有什么区别? 锂电池UN38.3检测标准要求

通常很多人做电池检测的时候,将UN38.3和MSDS混淆或者认为是同一个认证,这对办理检测有非常大的影响。MSDS是化学安全技术说明书,是一份对锂电池成分以及应急处理的文件,UN38.3是对锂电池的一份安全检测。因为锂电池要空运&#xf…

使用 javascript 在 n*m 网格中演示 BFS 广度优先搜索算法求最短路径

完整代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style type"text/css">#box1 table{border: 0px;border-collapse: collapse;cursor: poi…

protected by SourceGuardian and requires a SourceGuardian loader ‘ixed.8解决方案

php相关问题 安装程序提示以下内容 遇到某些php程序的安装提示&#xff1a; PHP script ‘/www/wwwroot/zhengban.youyacao.com/install/index.php’ is protected by SourceGuardian and requires a SourceGuardian loader ‘ixed.8.1.lin’ to be installed. 1) Click her…

面试测试岗脑子里实在没货,简历(软件测试)咋写?

简历咋写&#xff0c;这是很多没有【软件测试实际工作经验】的同学们非常头疼的事情。 简历咋写&#xff1f;首先你要知道简历的作用。 简历的作用是啥呢&#xff1f; 一句话就是&#xff1a;让HR小姐姐约你。 如何让HR看你一眼&#xff0c;便相中你的简历&#xff0c;实现在众…

panabit日志审计singleuser_action.php任意用户添加漏洞复现

文章目录 panabit日志审计singleuser_action.php任意用户添加漏洞复现0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 panabit日志审计singleuser_action.php任意用户添加漏洞复现 0x01 前言 免责声明&#xff1a;请勿利用文章…

PADS Router的操作页面及鼠标指令介绍

PADS Router的用户界面由菜单栏&#xff0c;工作界面&#xff0c;一般工具栏&#xff0c;状态栏&#xff0c;项目浏览器组&#xff0c;输出窗口&#xff0c;电子表格组成&#xff08;图1&#xff09;&#xff1a; 图1 注意&#xff1a;如果你的界面没有显示项目浏览器&#xff…

亚马逊车充UL2089认证费用是多少,测试流程

熟悉亚马逊的都知道&#xff0c;电子电器产品在亚马逊上是一个比较受欢迎的品类&#xff0c;卖家也是比较多&#xff0c;随着电子电器产品的多样化&#xff0c;亚马逊对于产品的安全以及合规审核也越来越严格&#xff0c;近期很多车充品类的卖家遇到很多的问题就是亚马逊要求商…

el-input输入校验插件(正则表达式)

使用方法&#xff1a;在main.js文件中注册插件然后直接在<el-input>加入‘v-插件名’ (1)在main.js文件&#xff1a; // 只能输入数字指令 import onlyNumber from /directive/only-number; Vue.use(onlyNumber); &#xff08;2&#xff09;在src/directive文件夹中 &a…

window10 mysql8.0 修改端口port不生效

mysql的默认端口是3306&#xff0c;我想修改成3307。 查了一下资料&#xff0c;基本上都是说先进入C:\Program Files\MySQL\MySQL Server 8.0这个目录。 看看有没有my.ini&#xff0c;没有就新建。 我这里没有&#xff0c;就新建一个&#xff0c;然后修改port&#xff1a; […

中文编程从入门到精通,中文编程语言开发工具分享

中文编程从入门到精通&#xff0c;中文编程语言开发工具分享 给大家分享一款中文编程工具&#xff0c;零基础轻松学编程&#xff0c;不需英语基础&#xff0c;编程工具可下载。 这款工具不但可以连接部分硬件&#xff0c;而且可以开发大型的软件&#xff0c;向如图这个实例就…

商标服务展示预约小程序的效果如何

想要打造自己的品牌&#xff0c;商标是必要的一步&#xff0c;除了可以自己申请外&#xff0c;部分商家会选择通过第三方代理平台操作&#xff0c;在商城注册场景包括查询、资料提交、驳回复审等。 市场生意并不缺&#xff0c;对商标注册代理机构来说&#xff0c;需要不断拓客…

线程池--简单版本和复杂版本

目录 一、引言 二、线程池头文件介绍 三、简单版本线程池 1.创建线程池 2.添加任务到线程池 3.子线程执行回调函数 4.摧毁线程池 5.简单版线程池流程分析 四、复杂版本线程池 1.结构体介绍 2.主线程 3.子线程 4.管理线程 一、引言 多线程版服务器一个客户端就需要…

【算能】模型转换过程报错

报错信息&#xff1a; RuntimeError: [!Error]: tpuc-opt otv_batch1.mlir --chip-assign"chipbm1684" --chip-top-optimize --convert-top-to-tpu"modeF16 asymmetricTrue" --canonicalize -o otv_bm1684_f16_tpu.mlir报错问题&#xff1a; 1684的模型…

Java面向对象(进阶)-- 四种权限测试与方法的重写(override_overwrite)

文章目录 一、四种权限修饰二、测试四种权限修饰&#xff08;1&#xff09;准备&#xff08;2&#xff09;同一个类&#xff08;3&#xff09;同一个包&#xff08;4&#xff09;同一个包子类&#xff08;5&#xff09;不同包子类&#xff08;6&#xff09;跨包不是子类&#x…

shell基础篇:Bash特性和shell变量

shell基础篇 一、Bash特性bash基础特性关于历史记录的简单用法bash特性汇总 二、shell变量变量含义shell变量名规则定义shell变量变量替换/引⽤变量的作⽤域 一、Bash特性 bash基础特性 ● bash是一 个命令处理器&#xff0c;运行在文本窗口中&#xff0c;并能执行用户直接输…

PCB设计入门基础

PCB设计入门基础 PCB基本结构 copper foil 铜箔laminate 层压(或粘合)材料inner layer core 内层堆芯 PCB基本结构是一个三明治的结构&#xff0c;它的上层是一个铜层&#xff0c;底层也是一个铜层&#xff0c;中间层脚FR-4&#xff0c;FR-4是一层不导电的物质&#xff0c;叫做…

轻量封装WebGPU渲染系统示例<11>- WebGPU简单PBR效果(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/main/src/voxgpu/sample/SimplePBRTest.ts 此示例渲染系统实现的特性: 1. 用户态与系统态隔离。 细节请见&#xff1a;引擎系统设计思路 - 用户态与系统态隔离-CSDN博客 2. 高频调用与低频调用隔离。 …

爆肝整理,Fiddler+Charles+Chrome开发者工具弱网测试总结,一篇概全...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、Fiddler模拟弱…