我正在與Spring依賴注入和嵌套的Bean戰鬥:有兩個bean,其中一個嵌套在另一箇中。當檢查外部的bean時,我可以看到內部的bean沒有被注入。嵌套bean的彈性依賴注入
主類:
public class Main {
public static void main(String[] args) {
AnnotationConfigApplicationContext ctx
= new AnnotationConfigApplicationContext("org.acme");
MyService myService = ctx.getBean(MyService.class);
// do something with myService
}
}
外豆:
@Component
public class MyService {
@Inject // javax.inject.Inject
private MyDao dao;
public MyService() {
System.out.println(dao);
}
}
內豆:
@Component
public class MyDao {
public MyDao() {
System.out.println("dao is alive");
}
}
有啓動應用程序時沒有錯誤,但我看到null
由MyService
和的構造函數打印出來。當使用@Configuration
類時,我遇到了同樣的問題。看起來外部的bean依賴不會被注入。
Thx!