在工作中遇到这样一个问题,util工具类中的方法都是静态的,但是在某些静态方法中需要调用@Autowired注入进来的对象,直接使用是不可以的,静态方法中不能调用非静态变量,若将@Autowired注入到静态变量中也是不可以的,会报空指针,以下是我的解决方案
private static SocialsProperties socialsProperties;
@Autowired
public void setSocialsProperties(SocialsProperties socialsProperties){
OfficialAccountUtil.socialsProperties = socialsProperties;
}
自定义一个setSocialsProperties方法使用@Autowired自动注入,将所需要的bean对象作为参数传入后赋值给当前类定义的静态变量,这样就可以在下面的静态方法中去访问了