开发中遇到一个奇葩的问题,@Autowired注入的类对象为null,并且整整耗费了一天时间各种尝试,都没拍除此问题,无奈下,只好请教同事,最终在同事的帮助下解决此问题,心里是万分感激同事!
示例如下:
可以用ApiService apiService=SpringContextHolder.getBean(ApiService.class);
代替@Autowired为null的情况
package data.test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class TestService{
//用@Autowired方式注入为null,这里将其注释掉了
//@Autowired
//private ApiService apiService;
//ApiService是需要注入的类对象,此种方法注入后正常,不会为null
ApiService apiService=SpringContextHolder.getBean(ApiService.class);
public static void main(String[] args) {
String result = apiService.getXXX();
System.out.println(result);
}
}