普通变量在使用@value注解时,直接在变量上加 @value 注解,并通过 spring表达式写上想要获取的值,就可以将配置值注入到变量中。但如果是静态变量就无法这样注入,那么静态变量如何通过 @value 注解进行注入,这和spring 注入静态变量相似,需要写一个set方法,spring 通过调用set方法进行注入,并将注入值赋值给静态变量,代码如下
首先需要在使用 @value注解的类上加 @Component 注解,然后在set方法上加 @Value 注解
代码
package com.demo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class NameUtils {
private static String name;
@Value("${name}")
public void setName(String name) {
NameUtils.name = name;
}
//该方法为了方便测试
public static String name(){
return name;
}
}
yml 文件
测试
来源:CSDN
作者:悟世君子
链接:https://blog.csdn.net/wsjzzcbq/article/details/104737232