Spring Boot中的高级配置文件管理

我们都知道Spring Boot中的配置文件管理及其为不同环境配置应用程序时提供的灵活性。 此功能的另一个强大方面是,在任何给定时间,我们都可以拥有多个活动配置文件。 这样做的好处是我们可以将部署环境配置文件与业务用例相关的配置文件混合在一起。

让我们假设我们将在同一环境中进行应用程序的不同部署,并且无论它们是否在同一环境中,某些属性都将根据部署进行更改。 在这种情况下,我们可以拥有特定于环境的应用程序属性文件,然后每个此类文件都可以覆盖根据不同部署而变化的属性。

我定义了三个应用程序属性文件,如下所示:

#application.properties
app.name=Default
spring.profiles.active=test,org1
#application-local.properties
app.name=Local
#application-test.yml
app:name: Test
---
spring:profiles: org1
app:name: Test Org1
---
spring:profiles: org2
app:name: Test Org2

然后,我们有一个简单的AdvancedPropsDemo类,它具有main方法,该方法将打印属性app.name的值:

@SpringBootApplication
@Component
public class AdvancedPropsDemo implements ApplicationRunner {@Value("${app.name}")String appName;public static void main(String[] args) {new SpringApplication(AdvancedPropsDemo.class).run(args);}@Overridepublic void run(ApplicationArguments args) throws Exception {System.out.println("App Name value " + appName);}
}

我们有一组test,org1作为活动的配置文件和Spring引导已回升智能application-test.yml文件,然后挑app.name中定义的属性org1轮廓。 在YAML属性文件中,我们可以为同一文件中的不同配置文件创建不同的部分,并在其对应的配置文件部分中覆盖所需的属性

完整的代码可以在这里找到。

翻译自: https://www.javacodegeeks.com/2020/01/advanced-profile-management-in-spring-boot.html

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

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

相关文章

先装vs还是先装sql_【家装话题】装修师先装门还是先装地板?

装修先装门还是先装地板从成品保护角度说,先装门,成品保护相对容易,不管是发泡胶的滴落,玻璃胶的污染,安装门用的电动工具,包装垃圾,锯末,钻孔钉凿的冲击。直接在水泥地面上操作&…

python openpyxl模块追加数据_python openpyxl模块实现excel的读取,新表创建及原数据表追加新数据...

当实际工作需要把excel表的数据读取出来,或者把一些统计数据写入excel表中时,一个设计丰富,文档便于寻找的模块就会显得特别的有吸引力,本文对openpyxl模块的一些常见用法做一些记录,方便工作中查询(好记性不如烂笔头)…

android 百度开发论坛,Android 百度地图开发(一)

现在好多手机应用开发需要使用到百度地图,在使用百度地图的过程和遇到的问题整理一下方便以后使用申请密钥使用白度地图首先需要申请API Key,申请百度账户才能得到API Key. 登录 http://developer.baidu.com/map/ 点击申请密钥申请过程中需SHA1,使用Eclipse的同学应该很容易使用…

s905各种型号的区别_梯式桥架和槽式桥架的区别介绍

电缆桥架是我们日常生活中经常可以看到的一种既可以保护电缆电线不受外界因素损坏,并保障着我们用电安全的一种建筑材料。电缆桥架是由支架、托臂以及安装附件组成的,桥架既可独立架设安装,也可以敷设在建筑物和管廊支架上。对于电缆桥架型号…

shell中正则表达式详解_Linux中的正则表达式

点击上方Linux迷,关注我们正文来自:https://www.linuxmi.com/linux-zhengzebiaodashi.html正则表达式就是用于匹配每行输入的一种模式,模式是指一串字符序列。拥有强大的字符搜索功能。也非常方便的搜索过滤出我们想要的内容。Linux系统&…

android 编辑9图片,Android基础入门教程——1.6 .9(九妹)图片怎么玩

Android基础入门教程——1.6 .9(九妹)图片怎么玩Android基础入门教程1.本节引言:可能有的一些疑问:1.什么是.9图片?答:图片后缀名前有.9的图片,如pic1.9.png这样的图片2. .9图片能干嘛?答: 在图片拉伸的时候…

Spring WebClient和Java日期时间字段

WebClient是Spring Framework的反应式客户端,用于进行服务到服务的调用。 WebClient已成为我的实用工具,但是最近我意外地遇到了一个问题,即它处理Java 8时间字段的方式使我绊倒了,本文对此进行了详细介绍。 快乐之路 首先是幸福…

2台电脑一根网线传文件_Iphone 和PC如何共享文件

iphone上有个隔空传送的功能,传文件非常方便,但是需要苹果全家桶才能使用,和个人pc如何传文件,特别是家里的主力台式机,需要传个视频文件,微信25m限制,插线也不太方便,能否和隔空传送…

如何将原图和json融合_双曲知识嵌入:如何将知识“融合”带入新空间?

知识图谱作为人类知识的结构化数据,是构建人工智能的基石。然而目前的知识图谱都是不完备的,所以需要将多个知识图谱融合以获得更完备的知识库。基于表示学习的知识关联作为知识图谱融合的新方法受到了许多关注。但知识关联模型面临着参数多、复杂性高、…

android viewgroup点击变色,Android ViewGroup事件分发

上篇文章已经分析了Android的Touch事件分发。如果没看的建议先看一下。Android View的Touch事件分发。接下来我们开始写几种场景,得出一个初步的执行顺序,然后我们按照这个顺序开始分析。首先我们自定义一个ViewGroup和一个View,然后重写相关…

qq数据泄露_真良心,腾讯这个app竟然能查账号泄露

最近有朋友都在分享腾讯手机管家,纷纷表示这是一个良心app,能查到自己账号泄露。仔细想一下,这么多年下来确实忘了自己都在什么平台或网站注册过账号,在黑客泛滥的今天,黑客很容易从一些平台窃取数据库,拿到…

vue 如何获取图片的原图尺寸_阳台洗衣机组合柜如何设计|尺寸规范|案例图片...

对于阳台装洗衣机来说,不只是简单的装修,还需要我们考虑水电、尺寸以及美观实用等问题,以免后期出现问题的时候会更加麻烦。接下来深圳装修网小编就为你们带来阳台洗衣机组合柜的案例赏析,以及装修的尺寸规范等内容,一…

print2flashwindows7旗舰版下载哪一个_JUJUMAO_MSDN原版 win 7 二合一 旗舰版32位 64位原版ISO镜像...

文件: F:\JUJUMAO_msdn_Win7_ultimate_x86_x64.iso大小:4.73G(5082120192 字节) MD5: AA4C7E80C52AC0DEDC757EF86CF8057BSHA1: 66505AD9424ED2D2B0DEDE7067917B708A67C7DDCRC32: 0E2FAB2C高速下载地址:https://jujumao.cowtransfer.com/s/3220a80131744fJUJUMAO_MSD…

lambda ::表达式_Lambda表达式和流API:基本示例

lambda ::表达式这篇博客文章包含基本Lambda表达式和Stream API示例的列表,我在2014年6月在Java用户组Politechnica Gedanensis (格但斯克技术大学)和Goyello的实时编码演示中使用了这些示例。 Lambda表达式 句法 最常见的示例: …

android readonly file system,安卓ROOT权限下“Read-only file sytem”解决办法

今天用安卓模拟器:BlueStacks,打开apk终端模拟器:Terminal,在shell操作命令的时候提示“Read-only file sytem”:第一种方法:在 Android 系统中,我们通过 adb 登录到 shell 进行操作时&#xff…

客制化键盘编程_客制化键盘劝退指南

客制化键盘劝退指南最近总感觉mac book pro的键盘不太好用,所以把家里用的杜伽K320拿到公司用了。这把键盘,樱桃的银轴,红轴的压力克数,更小的键程,用起来还是不错的。如此一来,家里的台式机没有键盘了&…

HTML5怎样设置站点,我是怎样让网站用上HTML5 Manifest

Manifest是用来做离线页面的,即使断网也能正常打开页面,用起来简单,但是在实际使用中存在以下问题:(1)如何自动缓存所有的页面的资源?因为manifest不能使用*通配符进行cache(2)如果网站资源更新,怎么让mani…

wallpaper怎么设置锁屏_Apple ID密码忘了怎么找回?丨如何让面容和指纹解锁立马失效?...

忘记Apple ID这种事肯定不少果粉都经历过,像小编也是如此,因为密码都比较复杂,如果太久没输入过密码,久而久之就忘了。哪一天突然需要用的时候,怎么想也想不起来。想不起来的话我们就别想了,直接重置密码就…

在Java中将时间单位转换为持续时间

java.util.concurrent.TimeUnit以给定的粒度单位表示Java中的持续时间,并提供了跨单位转换的实用方法。 java.util.concurrent.TimeUnit最早是在Java早期(1.5)引入的,但自那时以来已经被扩展了好几次。 在此博客文章中&#xff0c…

ajax contenttype详解_$.ajax中contentType: “application/json” 的用法详解

具体内容如下所示:$.ajax({type: httpMethod,cache:false,async:false,contentType: "application/json; charsetutf-8",dataType: "json",//返回值类型url: pathurl,data:jsonData,success: function(data){var resultData 返回码data.status…