https://blog.csdn.net/persistencegoing/article/details/84376427
springboot写一个工具类,使用@Value注入配置文件的值,但是一直为空,后来查资料发现@Value对static的属性注入无效。
我的解决办法,其实也挺简单的,就写一个setter方法,在setter方法中注入。当然这个工具类首先得是一个Bean否则是不能被扫描到的,我在这个工具类上加一个组件注解@Component。详细代码如下:
@Component
public class ExampleUtil {
private static String name;
/**
* 从application中获取name,使用这种方法是因为@Value写对static无效,注意需要
* @Component
* @param name
*/
@Value("${name}")
public void setName(String name) {
ExampleUtil .name= name;
}
/**
* @return
*/
public static String getName(){
return ExampleUtil .name;
}
这样就解决了@Value不能注入到static属性中的问题了,简单吧。
希望大家关注我一波,防止以后迷路,有需要的可以加群讨论互相学习java ,学习路线探讨,经验分享与java求职
群号:721 515 304