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

Spring Boot:从YAML文件加载@value

吴俊晤
2023-03-14

我需要从.yml文件加载一个属性,该文件包含应用程序可以从中读取文件的文件夹的路径。

@Value("${files.upload.baseDir}")
private String pathToFileFolder;
java -jar app.jar --spring.config.location=/path/to/application-production.yml

当前目录

类路径/配置包

类路径根

{...}
files:
      upload:
        baseDir: /Users/Thomas/Code/IdeaProjects/project1/files
{...}
@SpringBootApplication
@EnableCaching
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'files.upload.baseDir' in string value "${files.upload.baseDir}"

是否必须使用YAMLPropertySourceLoader类或添加一个特殊注释来启用Spring Boot中对.yml的支持?

编辑:.yml文件包含一些其他属性,这些属性由Spring Boot成功加载,如datasource.xxxhibernate.xxx

共有1个答案

农永宁
2023-03-14

例如:application.yml

key:
 name: description here

您的类:

@Value("${key.name}")
private String abc;
 类似资料:
  • 问题内容: 我需要从文件加载属性,该文件包含应用程序可以从中读取文件的文件夹的路径。 我正在使用以下代码来注入属性: 用于开发的文件位于下,在生产环境中使用以下命令运行应用程序,以覆盖开发设置: Spring Boot文档说: SpringApplication将在以下位置从application.properties文件加载属性,并将其添加到Spring Environment中: 当前目录的/

  • 在Spring,如果我们有两个.yaml文件作为。(包含在应用程序中) 如果这个配置的属性类类似于- 则仅从一个文件加载“流”,即流。size()给出2.(remote04,remote05。这取决于application.yaml中配置文件的顺序) 但如果我将yamls文件更改为- 和属性类 现在hashmap将有4个条目。i、 e.流量。size()给出4 那么,这是否意味着Spring不会从

  • 我必须调整一个有应用程序的springboot应用程序。配置应用程序属性的yaml文件。 使用java类文件中的注释映射属性,以读取值@ConfigurationProperties(prefix=“propName”) 现在的要求是我需要有另一个文件称为application-profile-2.yml和重命名application.ymlapplication-profile-1.yml,这些

  • 我在应用程序中有我的配置。类路径根中的yml文件(src/main/resources/)。当我正常启动应用程序时,配置加载良好。然而,在我的测试中,应用程序。yml文件根本没有加载。 我的测试的标题如下所示: 配置类: 当我调试应用程序时,我看到yml文件被加载到ConfigFileApplication ationListener中,但在测试中没有调用ConfigFileApplication

  • 使用Spring Boot 1.3.0.Release 编辑:一种工作方法是手动操作:

  • 在我的项目中,我想使用特定于环境的属性文件。例如,如果我在开发中运行它,它应该使用应用程序。dev.properties,对于生产,它应该使用应用程序。产品属性等等。 我有下面两个文件在我的资源文件夹。 application.properties(用于生产) application.dev.properties(用于开发) 我有一个属性像下面的每个文件。 为了刺激 给德夫 我有一门课,如下所示