springboot从yml配置文件中取参数为null
相关文件:
application.yml文件:
ConfigProperties实体类:
(注:这块涉及到了一个关于lombok插件的问题,还有一个spring关于@value注解的问题,还有一个为什么不设置参数requestPath为private static final 类型的问题)
方法调用是这样的:
报的错是这样的:Null
我的心是崩溃的……
总结一下:
1、可以使用注解的方式,不过注解写在非static的方法上(Spring的注解不支持静态的变量和方法)。
2、通过@Value注解可以获取配置文件里的属性,但是要注意调用的方式,不然会显示为Null
3、这样做可以保证加载正确的参数
原因据我分析可能是这样的:
- 之所以为null,这个ConfigProperties类在bean加载之前就被调用了,或者说springboot在加载时就根本没有识别这个类,所以注入为空,所以说把这个类变成bean对象,通过spring的依赖注入就可以使spring识别此类。