我有以下课程:
@component
public class Car extends abstract Vehicle {
public Car() {
super(10);
}
}
public abstract class Vehicle {
@Autowired
private Validator em;
public Vehicle(int i) {
// init
}
public int getVehicle() {
}
}
当我使用以下内容创建 bean 时:
applicationContext.getAutowireCapableBeanFactory().createBean(..)
它失败并出现异常声明无法注入验证器 bean...
但是,如果我将自动装配更改为设置器注入,它的工作方式如下:
public abstract class Vehicle {
private Validator em;
public Vehicle(int i) {
// init
}
public int getVehicle() {
}
@Autowired
public set Em(Validator em) {
this.em = em;
}
}
有人可以向我解释一下,这与 bena 生命周期的工作方式有关吗?