Spring 源碼分析--番外篇(直接註冊與獲取Bean)

前面講到的內容是經過配置類去掃描包路徑或者本身導入的類或者配置文件其餘修飾對象掃描類,並不是本身手動注入一個Bean,而後獲取Beanjava

public class DirectMain {
	public static void main(String[] args) {
		AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();
		ac.register(DirectUserAA.class);
		ac.registerBean("directUserBB",DirectUserBB.class);
		ac.refresh();
		DirectUserAA useraa = (DirectUserAA)ac.getBean(DirectUserAA.class);
		System.out.println(useraa);
		DirectUserBB userbb = (DirectUserBB)ac.getBean(DirectUserBB.class);
		System.out.println(userbb);
	}
}

這種方式你們固然不會用到,由於一個項目中一般會有幾百上千個類,Spring這樣的框架不可能只提供一個一個去註冊,那就不會有人用它了(不過Spring最開始基於XML的時候還真的是一個一個Bean去註冊-還有Spring在JDK1.5發現了註解,開始作基於註解的框架),就算要手動註冊Bean應該是在後面講解的時候經過BeanFactoryPostProcessor註冊。框架

給本身佈置一個做業:等整個初始化流程梳理完了,再補充一個帖子是Spring提供的全部可注入或者修改Bean的實現方式code

相關文章
相關標籤/搜索