首页 /  技术专区  /  SpringBoot 宽屏模式 >

static静态属性@Autowired报null空指针异常解决

如果属性被static修饰时候,用spring的注解@Autowired会报空指针异常。

原因:

静态变量、类变量不是对象的属性,而是一个类的属性,所以静态方法是属于类(class)的,普通方法才是属于实体对象(也就是New出来的对象)的,spring注入是在容器中实例化对象,所以不能使用静态方法。

解决方法:

在set方法上面使用@Autowired,写法如下,类上面需要加@Component注解。

TIM截图20191018180803.png

@Component
public class QiniuUtils {

    private static UdeitorProperties properties;

    @Autowired
    public void setProperties(UdeitorProperties udeitorProperties){
        QiniuUtils.properties = udeitorProperties;
    }
}



头像
0/200
图片验证码