当前位置: 首页 > 知识库问答 >
问题:

spring boot支持同时使用属性和yml文件吗?

南门鸿振
2023-03-14

我有一个spring boot应用程序,我想使用一个yml文件作为我的应用程序属性,还想使用一个普通的应用程序${profile}。属性文件集来配置我的应用程序。

所以我的问题是,这可以做到吗?如果可以的话,您如何配置spring boot来查找yml文件和属性,并将它们合并到每个环境的一个集合中?

至于为什么我想/需要两者都使用,这是因为我喜欢html" target="_blank">yml文件的灵活性和易用性,但内部组件(用于加密)需要使用属性文件集。

我确实看到了这一点,YAML文件无法通过@PropertySource注释加载

但没有说明两者是否可以一起使用。

请提供详细的配置(XML或Java配置),说明如何使其工作。

蒂娅,

斯科特

共有3个答案

相诚
2023-03-14

是的,您可以在不进行任何配置的情况下运行这两个程序。

在Spring的靴子里,它会选择。财产或财产。yaml文件的顺序如下:

>

  • 应用程序-{配置文件}.{属性|yml}

    应用{properties | yml}

  • 令狐声
    2023-03-14

    是的,你可以在同一个项目中同时使用两者。

    • 当同时使用YML和属性时,例如
      应用程序。yml和应用程序。同一
      项目中的同一时间属性,第一次应用。yml将在以后加载
      应用程序。属性将被加载
    袁青青
    2023-03-14

    我可以回答我自己的问题,因为它正如你所期望的那样工作。application.yml文件和相应的应用程序-${file}。属性都被加载并合并到环境中。Spring启动只是让这个工作自然。

     类似资料:
    • 当使用Spring Cloud AWS进行回购时,我注意到application.yml包含 但我找不到这些属性在哪里使用。通常,yml属性是通过@Value或@ConfigurationProperties导入的,但是在repo中没有用于它们的注释。 pom。xml文件具有和依赖项,我猜它们使用了属性。 每当我添加自定义属性,如,pom.xml抱怨未知属性。 我实际上不知道yaml文件中的属性如

    • 我正在使用log4j2.0-rc1和文件,但log4j lib始终使用默认配置(日志级别、appender等)运行它。我还尝试将名称更改为,但什么也没发生。

    • 问题内容: 我有需要在各种不同的登台环境中运行的JUnit测试。每个环境都有不同的登录凭据或该环境特定的其他方面。我的计划是将环境变量传递到VM中以指示要使用的环境。然后使用该var从属性文件中读取。 JUnit是否有任何内置功能来读取.properties文件? 问题答案: Java内置了读取.properties文件的功能,而JUnit内置了在执行测试套件之前运行安装代码的功能。 java阅读

    • 我的第一个疑惑是yml和yaml有什么区别?我应该用哪一个。此外,我必须把我的标签在yml文件,并加载它们。所以我不知道该怎么做。这方面的任何例子或教程都会非常有帮助。

    • 看起来在这个话题上有一些问题,但许多问题现在已经过时,或者问的是不同的问题。 例如,我想做 我不想在 我有一个方法签名,它同时接受请求参数和请求主体(它是Kotlin,但我不认为这实际上有什么不同)。 我可以很好地访问RequestParam,但是RequestBody包含的不仅仅是我在body中发送的JSON,它包含了body和请求参数的合并。在上面的示例中,它将为body绑定输出以下内容 有没