Spring IOC(2)—-如何注冊bean定義

前面說到IOC容器在刷新之前的一些初始化工作,現在來看看在 refresh() 方法中,是怎樣來加載注冊我們自己的bean定義的。

refresh() 方法中有很多功能,從注釋中就可以看出來

Spring IOC(2)----如何注冊bean定義

我們本次重點關注 invokeBeanFactoryPostProcessors( beanFactory) ; 這個方法

該方法里面可以獲取到前面初始化好的注解讀取器AnnotatedBeanDefinitionReader,前面在AnnotationConfigUtils#registerAnnotationConfigProcessors方法中是往 beanFactory 里面注冊了配置類的處理器的ConfigurationClassPostProcessor,這個時候就可以拿出來使用了,創建一個 配置類解析器對象ConfigurationClassParser,來具體處理幾種形式bean注入(@propertySource,@ComponentScan,@Import,@ImportResource,@bean),,最終再由 ConfigurationClassBeanDefinitionReader 將配置的bean定義加載到容器中ConfigurationClassBeanDefinitionReader#loadBeanDefinitionsForConfigurationClass

流程圖如下:

Spring IOC(2)----如何注冊bean定義

原文 

http://www.cnblogs.com/nijunyang/p/11631724.html

本站部分文章源于互聯網,本著傳播知識、有益學習和研究的目的進行的轉載,為網友免費提供。如有著作權人或出版方提出異議,本站將立即刪除。如果您對文章轉載有任何疑問請告之我們,以便我們及時糾正。

PS:推薦一個微信公眾號: askHarries 或者qq群:474807195,里面會分享一些資深架構師錄制的視頻錄像:有Spring,MyBatis,Netty源碼分析,高并發、高性能、分布式、微服務架構的原理,JVM性能優化這些成為架構師必備的知識體系。還能領取免費的學習資源,目前受益良多

轉載請注明原文出處:Harries Blog? » Spring IOC(2)—-如何注冊bean定義

贊 (0)
分享到:更多 ()

評論 0

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
手机彩票计划软件超稳