由于@Component和@Autowired的加载顺序导致的问题
问题
在使用@Autowired自动注入service的时候发现并未注入成功,得到的对象是null,导致异常
原代码
@Component
public class DistributedLock {
@Autowired
RedisService redisService;
}
原因
在使用@Component注解将bean实例化到spring容器内的时候,我的@Autowired是在这个bean之中的,并未实例成功
修改后
@Component
public class DistributedLock {
private RedisService redisService;
@Autowired
public void init(RedisService service) {
this.redisService = service;
}
}