springboot从yml配置文件中取参数为null

相关文件:

application.yml文件:

ConfigProperties实体类:

springboot从yml配置文件中取参数为null_第1张图片

(注:这块涉及到了一个关于lombok插件的问题,还有一个spring关于@value注解的问题,还有一个为什么不设置参数requestPath为private static final 类型的问题)

方法调用是这样的:

springboot从yml配置文件中取参数为null_第2张图片

报的错是这样的:Null

我的心是崩溃的……

总结一下:

1、可以使用注解的方式,不过注解写在非static的方法上(Spring的注解不支持静态的变量和方法)。

2、通过@Value注解可以获取配置文件里的属性,但是要注意调用的方式,不然会显示为Null

3、这样做可以保证加载正确的参数

springboot从yml配置文件中取参数为null_第3张图片

springboot从yml配置文件中取参数为null_第4张图片

原因据我分析可能是这样的:

  • 之所以为null,这个ConfigProperties类在bean加载之前就被调用了,或者说springboot在加载时就根本没有识别这个类,所以注入为空,所以说把这个类变成bean对象,通过spring的依赖注入就可以使spring识别此类。

 

你可能感兴趣的:(小坑)