天天看點

(三)Spring架構——IoC容器

Spring容器在其架構的核心。該容器會建立對象,組織對象,配置對象,管理對象從建立到銷毀的完整生命周期。Spring容器利用依賴注入來管理組成一個應用的元件。而這些對象就是Spring的Beans。

容器通過讀取配置中繼資料來擷取執行個體化、配置群組裝對象的說明。配置中繼資料可以是XML檔案,java注解和java代碼。Spring IoC容器通過使用Java POJO類和配置中繼資料來生成一個完整的可配置和可執行的系統或應用程式。

Spring提供了兩個卓越的容器類型:

1、Spring BeanFactory Container(Spring Bean工廠容器):

這個最簡單的容器為DI提供了基本的支援,它被org.springframework.beans.factory.BeanFactory接口所定義。BeanFactory和相關接口(BeanFactoryAware、InitializingBean、DisposableBean),為向後相容第三方架構到Spring提供了支援。

2、Spring ApplicationContext Container(Spring應用上下文容器):

這個容器添加了更過特定于企業的功能,如從properties檔案中解析文本資訊的能力,和傳遞事件到特定的事件監聽器中。這個容器由org.springframework.context.ApplocationContext接口定義。

ApplicationContext容器包含了BeanFactory容器的所有功能,是以ApplicationContext容器是BeanFactory容器的一個特定化。BeanFactory還能被用于輕量級的應用中(如:移動裝置或基于applet的應用程式,這些程式的資料量和速度是非常重要的)。