一般情况下工具类的方法都是写成静态的(static),这样用spring注入就会产生问题,注入进来的属性在调用时会报空指针异常
所以不能用常规的注入
1,在工具类上加一个@Component注解,把它交给spring去管理
2,先把需要调用的service注入进来,然后在用静态的注入一次
@Component
public class Util {
@Autowired
private BusinessService businessService;
private static BusinessService service;
@PostConstruct
public void init() {
service= businessService;
}
}
3,@PostConstruct注解在完成依赖注入之后执行
4,执行顺序Constructor > @Autowired > @PostConstruct