工具类Util中的@Value注解注入为空

时间:2025-02-13 06:56:30

1.原因分析

在后端开发当中我们可能会使用到工具类,而一般的工具类中的方法都是静态方法。而@Value注解只能给普通变量注入值,不能直接给静态变量赋值。

2.延伸

静态变量(即类变量)是一个类的属性,而不是对象的属性。spring依赖注入是基于对象层面上的。

static变量在对象创建前就分配过内存了,而spring的注入是在创建对象的时候注入的。

3.解决方法

set方法是非静态的。

private static String endpoint;
@Value("${}")
public void setEndpoint(String endpoint) {
 = endpoint;
}