spring注入配置文件到静态变量使用方法

1.spring注入变量

正常情况下,使用spring注入变量,我们只需要使用@Value注解注入成员变量即可,如下图
spring注入配置文件到静态变量使用方法_第1张图片

2.spring注入静态变量 错误方式

如果我们按照正常的方式注入变量,即直接使用@Value注入到静态变量上面,如下图
spring注入配置文件到静态变量使用方法_第2张图片
这个时候,我实际注入到giftUrl的值是null,也就是说没有注入成功

3.spring注入静态变量 正确方式

我可以使用静态变量的set方法进行注入,如下图
spring注入配置文件到静态变量使用方法_第3张图片
这样的话,静态变量giftUrl就注入成功

4.原理说明

1.@Value注解生效是在spring初始化bean的时候,注入到属性上面去的。

2.static静态成员变量,在类加载的时候,就完成了初始化,如果在变量上面加上@Value注解,是不生效的

3.放在属性的set方法上面,这样就可以在类加载完成静态变量后,spring初始化bean的时候再次给静态变量赋值

你可能感兴趣的:(spring,spring,java,后端)