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

前言

环境隔离能力快速切换开发、测试、生产环境
步骤
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
主配置和激活的配置都生效优先以激活的配置为准
在这里插入图片描述
在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring