SpringBoot项目使用@PropertySource注解加载properties配置文件,但输出对象值为null

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot项目使用@PropertySource注解加载properties配置文件,但输出对象值为null相关的知识,希望对你有一定的参考价值。

Spring Boot使用@PropertySource注解加载resources文件夹下properties文件后,不报错,但是输出为空。求解!如何将properties中的值加载到pojo类中?

参考技术A 不是要加上前缀?
@ConfigurationProperties(prefix = "Example")
@PropertySource("classpath:my.properties")//这是属性文件路径
参考技术B @ConfigurationProperties(prefix = "aaa")本身的作用是去将application配置文件的属性值封装到被注解的bean中,加@PropertySource(value = "classpath:bbb")
注解后相当于多了一个选择,除了去application配置文件中找aaa名称的属性值还去bbb配置文件中找相应属性值,并且如果两个配置文件都有此属性值时优先使用application配置文件的值,也就是说@PropertySource(value = "classpath:bbb")这个注解只是将bbb配置文件添加到可映射配置文件列表,具体值的注入还得靠@ConfigurationProperties(prefix = "aaa")注解,或者使用@Value注解,所以单独用会导致输入对象值为null(个人同时学习中,回答的不一定精准,有问题欢迎指正)。

以上是关于SpringBoot项目使用@PropertySource注解加载properties配置文件,但输出对象值为null的主要内容,如果未能解决你的问题,请参考以下文章

使用 IDEA 创建 SpringBoot 项目(详细介绍)+ 源码案例实现

解决IDEA无法识别SpringBoot项目

SpringBoot 使用maven创建springboot项目

通过代码进行 Spring 配置与通过注释进行配置

JavaSpring Boot项目的创建和使用

springboot项目怎么调用深度算法