繁体   English   中英

如何在没有location配置属性的情况下配置Spring Java环境?

[英]How to configure the Spring java environment without the locations configuration property?

我正在创建一个带有以下注释的名为FileConfig的类:

@ConfigurationProperties(locations = { "classpath:application.properties" , "${file.config.location}" })

“ application.properties”中存在以下行:

file.config.location = fileinfo.yaml

显然,我的编译器说,不建议使用locations属性,而是直接使用其他位置配置环境。 有人可以帮助我如何配置环境,以便使用'fileinfo.yaml'文件的内容初始化FileConfig中的变量

使用@PropertySource("classpath:testapplication.properties")而不是使用上面的代码行会产生错误。

如果我正确理解了您的问题,请在application.properties文件中指定fileInfo.yaml文件的位置。 并且此值应设置为属性类FileConfig位置。

我认为这是不可能的,因为未评估SpEL表达式。

这是@ConfigurationProperties中的Java文档的一部分:

外部化配置的注释。 如果要绑定和验证某些外部属性(例如来自.properties文件),请将其添加到类定义或@Configuration类中的@Bean方法中。

请注意,与@Value相反,由于属性值是外部化的,因此不评估SpEL表达式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM