yml文件中使用profile配置切换多环境

news/2024/9/21 0:55:38/文章来源:https://www.cnblogs.com/ixtao/p/18379676

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.13</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>springboot_demo</artifactId><version>0.0.1-SNAPSHOT</version><name>springboot_demo</name><description>Demo project for Spring Boot</description><properties><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.12.0</version></dependency><dependency><groupId>com.alibaba.fastjson2</groupId><artifactId>fastjson2</artifactId><version>2.0.26</version></dependency><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.18</version></dependency><dependency><groupId>org.jsoup</groupId><artifactId>jsoup</artifactId><version>1.15.3</version></dependency><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-java</artifactId><version>4.0.0</version></dependency><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>31.0.1-jre</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.24</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>4.2.2</version></dependency><dependency><groupId>com.yy.paymentacceptance.common</groupId><artifactId>paymentcommon-lib</artifactId><version>2.5.12</version><scope>compile</scope></dependency><dependency><groupId>com.yy.paymentacceptance.common</groupId><artifactId>paymentcommon-lib</artifactId><version>2.5.12</version><scope>compile</scope></dependency><!-- JWT --><dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>4.0.0</version> <!-- 请根据需要选择合适的版本 --></dependency><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.2.0</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>
<!--        <dependency>-->
<!--            <groupId>org.apache.commons</groupId>-->
<!--            <artifactId>commons-pool2</artifactId>-->
<!--        </dependency>--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency></dependencies><build><finalName>${env}</finalName><plugins><!-- 打包插件 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><!-- 没有该配置,devtools不生效 --><fork>true</fork><addResources>true</addResources><!-- spring-boot:run 中文乱码解决 --><jvmArguments>-Dfile.encoding=UTF-8</jvmArguments></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins>
</build><profiles><profile><id>test2</id><properties><env>test2</env></properties><dependencies><!-- test2环境特定的依赖 --></dependencies></profile><profile><id>test3</id><properties><env>test3</env></properties><dependencies><!-- test3环境特定的依赖 --></dependencies></profile></profiles>
</project>

 

yml配置

env: ${env}
spring:profiles:active: @env@

测试代码

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;

@SpringBootTest
public class RedisTest {@Value("${spring.profiles.active}")String env;
    @Testpublic void test1(){
        System.out.println(env);}
}

 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

京东面试:600Wqps高并发ID如何设计?时钟回拨 如何解决?

文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,…

[笔记](更新中)CSP-S 2024 查漏补缺

复习内容部分来自NOI大纲中入门级和提高级的内容。 联合体(Union) 联合体是一种复合数据类型,其的定义上与结构体的定义类似。 与结构体不同,联合体中的所有元素共用一块内存,所以它占空间大小一般是最大成员的大小(不考虑对齐的情况下),相应地,任意时刻只有一个成员带…

推荐2款实用的持续集成与部署(CICD)自动化工具

前言 最近DotNetGuide技术社区交流群有不少同学在咨询:持续集成与部署(CI&CD)自动化工具有什么好用的推荐?今天大姚给大家推荐2款实用且免费的持续集成与部署(CI&CD)自动化工具,希望可以帮助到有需要的同学。 持续集成与部署工具的作用 持续集成(CI)和持续交付…

.NET周刊【8月第3期 2024-08-18】

国内文章 Roslyn 简单实现代码智能提示补全功能 https://www.cnblogs.com/lindexi/p/18365261 相信有很多伙伴热衷于编写 IDE 应用,在 dotnet 系下,通过 Roslyn 友好的 API 和强大的能力,实现一个代码智能提示是非常简单的事情。本文将和大家简单介绍一下如何使用 Roslyn 实…

视野修炼-技术周刊第98期 | Node原生支持TS

① Node 22.7 支持直接运行TS ② js 模糊搜索库 ③ Favicon 一键获取 ④ fuite - 网页内存泄露分析工具 ⑤ logtape - 0依赖日志库 ⑥ Volta 2.0 ⑦ AI 昆虫图识别欢迎来到第 98 期的【视野修炼 - 技术周刊】,下面是本期的精选内容简介 🔥强烈推荐Node 22.7 支持直接运行TS …

创建环境

python -m venv cuda cuda\Scripts\activate

最容易理解的Swin transformer模型(通俗易懂版)

Swin Transformer: Hierarchical Vision Transformer using Shifted Windows 1. 论文信息 原文地址:https://arxiv.org/abs/2103.14030 官网地址:https://github.com/microsoft/Swin-Transformer 2. 网络框架 2.1 swim VS vit 从图中可以得到,Swin相较于ViT的区别在于:Swim…

ArrayList声明,Add(), Insert();

ArrayList提供了3个构造器,通过这3个构造器可以有3种声明方式。 (1)默认构造器,会以默认大小(16位)初始化内部数组。构造器格式如下。ArrayList List = new ArrayList();//实例化一个ArrayList,命名为List;for (int i = 0; i < 10; i++)//添加10个元素到List中;{List.Ad…

【整理】【信息收集】敏感目录

一、敏感目录类型二、敏感目录收集2.1 在线查询一、敏感目录类型 数据文件、配置信息、上传目录、后台登录目录、安装页面、数据库版本、PHP版本、后台压缩包、未授权访问等。 二、 敏感目录收集 2.1 在线查询 (1)Google语法 1)site:查找与指定的网站有联系的URL。 用法:s…

centos 配置nginx

1.检查系统版本,安装nginxcat /etc/redhat-release,//这个命令会显示你的CentOS发行版名称以及大致的版本号rpm -q CentOS-release,//这将返回当前安装的CentOS版本的具体编号uname -r,//内核的完整版本字符串。2.安装nginxsudo yum install epel-release -y # 如果还没…