使用两个 yaml 文件进行配置属性

2023-12-30

我们正在使用 Spring Boot 应用程序,其中的属性是从application.yml文件而不是application.properties, 位于src/main/resources/如下所示:

config: 
  host: localhost:8080  
  server: 123  

他们被拉进一个.java像这样的文件

@ConfigurationProperties( prefix="config")  
public class ConnectionImpl implements Connection{
  @Value("${config.host}")
  private Stringhost;
} 

我可以通过这种方式检索属性。 但我们正在尝试将配置属性从application.yml到一个不同的.yml位于不同位置的文件。 (src/main/resources/env-config).
现在我无法以相同的方式检索属性,即使用@Value注解。我还需要添加其他注释吗?


来自文档 http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-application-property-files:

SpringApplication将从中加载属性application.properties (or application.yml) 文件位于以下位置并将它们添加到 SpringEnvironment:

  1. A /config当前目录的子目录。
  2. 当前目录
  3. 类路径/config package
  4. 类路径根

如果你不喜欢application.properties作为配置文件名,您可以通过指定 spring.config.name 环境属性切换到另一个文件名。您还可以使用以下命令引用显式位置spring.config.location环境属性(以逗号分隔的目录位置列表或文件路径).

默认搜索路径classpath:,classpath:/config,file:,file:config/总是被使用,无论其值如何spring.config.location。该搜索路径按优先级从最低到最高的顺序排列(file:config/获胜)。如果您确实指定了自己的位置,它们将优先于所有默认位置,并使用相同的最低到最高优先级排序。通过这种方式,您可以为您的应用程序设置默认值application.properties(或者您选择的任何其他基本名称spring.config.name)并在运行时使用不同的文件覆盖它,保留默认值。

您需要提供一个命令行参数来告诉SpringApplication具体去哪里看。如果一切都在resources/添加到类路径根目录中,那么您的命令行将如下所示:

java -jar myproject.jar --Dspring.config.location=classpath:/env-config/service-config.yml

如果你有一个将军application.yml under resources/,其中的属性仍将被加载,但优先级低于命令行上指定的属性文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用两个 yaml 文件进行配置属性 的相关文章

  • Java Swing透明JPanel问题

    我有一个 JLayeredPane 其中添加了 3 个 JPanel 我将 JPanel 设为透明 未设置背景并 setOpaque false 我在 JPanel 上绘制线条 只有最后添加的 JPanel 上的线条可见 其他 JPanel
  • 如何操作指定列上的 JTable 返回值?

    我有一个 JTable 有两列 可编辑的JTable 当用户在第二列中输入内容时 我的要求如下 用户只能输入数字和逗号 当用户输入错误字符时 会发出蜂鸣声 Toolkit getDefaultToolkit beep 我该如何实现这一目标
  • 如何将 Excel 中的图表导出为图形

    我有一系列 Excel 电子表格 每个电子表格至少包含一页数据和一页根据数据创建的图表 我需要捕获 不从数据中重新生成 将现有图表作为网络友好图像 这可以通过 Java 或 Net 实现吗 我知道 POI 的东西 Java 不会这样做 或者
  • 可以显式删除 lambda 的序列化支持

    As 已经知道 https stackoverflow com a 22808112 2711488很容易添加序列化当目标接口尚未继承时支持 lambda 表达式Serializable 就像 TargetInterface Seriali
  • Encog - 如何加载神经网络的训练数据

    The NeuralDataSet我在实际中看到的对象除了 XOR 之外什么都没有 它只是两个小数据数组 我无法从文档中找出任何内容MLDataSet 似乎所有内容都必须立即加载 但是 我想循环遍历训练数据 直到到达 EOF 然后将其算作
  • 当目标是属性时,@Throws 不起作用

    在看的同时这个问题 https stackoverflow com q 47737288 7366707 我注意到申请 Throws to a get or setuse site 没有影响 此外 唯一有效的目标 for Throws ar
  • 如何调试内部错误?

    所以我有课Foo最终应该调整并重新加载类 它也有一个方法 private void redefineClass String classname byte bytecode ClassFileLocator cfl ClassFileLoc
  • EDITLogBack Syslog 不工作 java

    我写了一个简单的项目来在 Ubuntu 中运行日志 方法如下example https examples javacodegeeks com enterprise java logback logback syslog example 应用
  • 将 Spring ModelAttribute 应用于所有使用特定参数类型的控制器

    在 Spring Boot REST 应用程序中 我有一个TableRequest包含表格数据 GET 请求的列排序 筛选和分页详细信息的类型 它是通用的 因为它不关心所请求的具体数据是什么 它只指定通用表参数 因此它适用于许多不同的控制器
  • 如何查找给定字符串中仅出现一次的第一个字符[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • spring-boot-autoconfigure-processor 的目的?

    目的是什么 annotationProcessor org springframework boot spring boot autoconfigure processor 无论有没有它 我的应用程序都可以正常工作 我创建的薄罐子在依赖项目
  • 飞碟中的外部 CSS

    我想知道如何在 Flying Saucer 中包含外部 CSS 在此之前THB我检查了所有可用的链接StackOverflow但它们没有帮助 这就是为什么我自己做这个的原因 TestCSS xhtml重命名版本TestCSS html 所以
  • 具有多个注释的方法上的 AspectJ 切入点

    使用加载时编织 纯 AspectJ 我们有2个注释 Time and Count 以及一些带注释的方法 Time name myMethod1Time Count name myMethod1Count public void myMeth
  • android中ScrollView中的图像

    在我的应用程序中 我想放置一个 png 文件 并且希望它在横向和纵向模式下都被视为滚动图像 请建议代码或示例 要使您的 Imageview 在高度不适合时滚动 您可以在 xml 中的 ScrollView 内添加一个 ImageView 并
  • java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException

    我想将 apache cli 添加到我的应用程序中 但我有问题 当我尝试运行它时显示这些错误 Error A JNI error has occurred please check your installation and try aga
  • 表达式的类型必须是数组类型,但它解析为浮点数

    当我编写 Java 代码时 我遇到了困难 我觉得我不知何故把这个概念弄乱了 就像我不确定这一点 void setScore float sco sco score public void setScore float sco int id
  • SWIG C 函数指针和 JAVA

    我有一些 C 代码 其中一个方法有一个函数指针作为参数 我正在尝试在我的 Android 应用程序中使用 C 代码 我决定使用 SWIG 来完成生成我需要的 java 文件的所有工作 一切都适用于常规函数 没有函数指针作为参数的函数 但我不
  • 使用从 java 程序调用的 Windows 命令提示符将具有多个连续空格的字符串作为参数传递给 jar 文件

    我想使用在另一个java程序中调用的Windows命令提示符将带有多个连续空格的字符串作为参数传递给jar文件 java 文件是这样的 它打印它的所有参数 package src public class myClass public st
  • 注释处理工具<-检查有效注释

    I have ColumnMetadata index 1 ColumnMetadata index 2 ColumnMetadata index 3 我必须使用 APT 检查索引号是否唯一 我不知道该怎么做 我看不懂教程 一般我在网上找资
  • Android,Volley请求,响应阻塞主线程

    使用 Volley 处理较大响应时会发生一些不好的事情 String url AppHelper DOMAIN service pages profile update json this infoTextView setText getS

随机推荐

  • C#:将数组分配给另一个数组:复制还是指针交换?

    抱歉问这个问题 我一直在谷歌上搜索了一下 但似乎出现的是对克隆或复制方法的引用 而不是我的问题的实际答案C 我有两个字节数组 它们正在被两个线程访问 private byte buffer1 new byte size private by
  • 如何使用 python 读取 CSV 文件时跳过空白行

    这是我的代码 我可以打印每一行 但是当出现空白行时 它会打印 由于CSV文件格式 所以我想在出现空行时跳过 import csv import time ifile open C Users BKA4ABT Desktop Test Spe
  • 如何将输出的 Fortran 二进制 NxNxN 矩阵读入 Python

    我用 Fortran 写出了一个矩阵 如下所示 real kind kind 0 0d0 dimension 256 256 256 dense CALCULATION inquire iolength reclen dense open
  • 如何在不不断扫描的情况下检测目录或文件何时发生更改

    除了读取所有文件并将它们与以前的快照进行比较之外 有没有办法在 Windows 中的 C 中检测目录何时发生更改 如果需要的话 我不介意 PInvoke EDITFileSystemWatcher 类很棒 但有一个问题是您必须启动后台任务
  • 一对一字段 Django 管理员

    编辑为使用一对一字段 我想将建筑物的面积添加到 django modeladmin 中 表结构是 class Area models Model id models IntegerField Buildings db column id a
  • Kubernetes Nginx Ingress 删除部分 URL

    我正在 Kubernetes 在 AKS 上 部署一个简单的应用程序 该应用程序位于使用 Nginx 的 Ingress 后面 并使用 Nginx helm 图表进行部署 我遇到一个问题 由于某种原因 Nginx 似乎没有将完整的 URL
  • AWS lambda读取zip文件执行验证并解压到s3存储桶(如果验证通过)

    我有一个 zip 文件到达 s3 存储桶的要求 我需要使用 python 编写一个 lambda 来读取 zip 文件 执行一些验证并在另一个 S3 存储桶上解压缩 Zip 文件包含以下内容 a csv b csv c csv trigge
  • 读取 HttpPost 响应

    我使用此代码向 http 服务器发送请求 HttpClient client new DefaultHttpClient HttpPost post new HttpPost http 192 168 0 1 test php HttpRe
  • 一步一步 oAuth Rest C# winform 示例 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我已经尝试了一段时间了 需要从头开始
  • XML RPC - 从 C# 调用 python 函数

    我正在使用库xml rpc net 2 5 0用于在 C 中创建调用一些 python 方法的 XML RPC 客户端 客户端位于Windows7机器中 服务器位于运行red hat的VMWare中 调用python函数的客户端代码 mai
  • 在另一个类中使用实例方法作为装饰器

    我正在尝试创建一个类 MySerial 实例化一个串行对象 以便我可以写入 读取串行设备 UART 有一个实例方法是一个装饰器 它包装了属于完全不同的类的函数 App 因此装饰器负责写入和读取串行缓冲区 如果我创建一个实例MySerial在
  • 如何在apache solr中以原始嵌套形式检索json?

    我在用阿帕奇 索尔 for 文本搜索 我有nested document structure 这是one json file id 1 info first name John last name Doe gender male 我创建了一
  • 将项目与 Eclipse 中的 Sonar 关联

    我有 Eclipse Indigo 3 7 基础和 MyEclipse 10 Java 企业开发插件 我已经为eclipse安装了Sonar插件 安装 Sonar 服务器并从本地主机 localhost 9000 本地运行它 在 Eclip
  • 并行调用 API,每分钟有硬性限制

    我正在尝试对 API 进行并行调用 在停止之前 API 的调用限制为每分钟 1 200 次 在低于限制的情况下异步最有效的方法是什么 def remove html tags text Remove html tags from a str
  • pip for python3.7 (Ubuntu 16.04) [重复]

    这个问题在这里已经有答案了 我无法为 python 3 7 安装 pip 当我尝试在线搜索时 我找到的一种解决方案是使用 get pip py 安装 pip 然而 它对我来说失败了 sudo python3 7 get pip py Tra
  • 如何使谷歌地图响应式?

    我正在尝试将 Google 地图添加到网页 但从使用 Google 教程的代码来看 它具有固定的宽度和高度 我的 HTML 头部是这样的
  • JavaFX 在野外?

    有人知道基于 JavaFX 的真实 Web 应用程序吗 我是一名经验丰富的 Java 程序员 正在考虑在日常工作之余创建一个网站 我在 UI 方面没有太多的专业知识 因此我正在寻找最好的方法来利用我现有的技能来创建可以提供出色的 RIA 体
  • 有没有办法分析 OpenCL 或 pyOpenCL 程序?

    我正在尝试优化 pyOpenCL 程序 出于这个原因 我想知道是否有一种方法可以分析程序并查看大部分时间都花在哪里 您知道如何解决这个问题吗 提前致谢 Andi 编辑 例如 用于 CUDA 的 nvidias nvprof 可以用于 pyC
  • EntityManagerFactory + jpadaosupport 的依赖注入问题

    现在 我在将EntityFactoryManager注入到我的jpadaosupport扩展类中时遇到问题 我的配置如下
  • 使用两个 yaml 文件进行配置属性

    我们正在使用 Spring Boot 应用程序 其中的属性是从application yml文件而不是application properties 位于src main resources 如下所示 config host localhos