W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Spring 容器是 Spring 框架的核心。容器將創(chuàng)建對(duì)象,把它們連接在一起,配置它們,并管理他們的整個(gè)生命周期從創(chuàng)建到銷毀。Spring 容器使用依賴注入(DI)來(lái)管理組成一個(gè)應(yīng)用程序的組件。這些對(duì)象被稱為 Spring Beans,我們將在下一章中進(jìn)行討論。
通過(guò)閱讀配置元數(shù)據(jù)提供的指令,容器知道對(duì)哪些對(duì)象進(jìn)行實(shí)例化,配置和組裝。配置元數(shù)據(jù)可以通過(guò) XML,Java 注釋或 Java 代碼來(lái)表示。下圖是 Spring 如何工作的高級(jí)視圖。 Spring IoC 容器利用 Java 的 POJO 類和配置元數(shù)據(jù)來(lái)生成完全配置和可執(zhí)行的系統(tǒng)或應(yīng)用程序。
IOC 容器具有依賴注入功能的容器,它可以創(chuàng)建對(duì)象,IOC 容器負(fù)責(zé)實(shí)例化、定位、配置應(yīng)用程序中的對(duì)象及建立這些對(duì)象間的依賴。通常new一個(gè)實(shí)例,控制權(quán)由程序員控制,而"控制反轉(zhuǎn)"是指new實(shí)例工作不由程序員來(lái)做而是交給Spring容器來(lái)做。在Spring中BeanFactory是IOC容器的實(shí)際代表者。
Spring 提供了以下兩種不同類型的容器。
序號(hào) | 容器 & 描述 |
---|---|
1 | Spring BeanFactory 容器
它是最簡(jiǎn)單的容器,給 DI 提供了基本的支持,它用 org.springframework.beans.factory.BeanFactory 接口來(lái)定義。BeanFactory 或者相關(guān)的接口,如 BeanFactoryAware,InitializingBean,DisposableBean,在 Spring 中仍然存在具有大量的與 Spring 整合的第三方框架的反向兼容性的目的。 |
2 | Spring ApplicationContext 容器
該容器添加了更多的企業(yè)特定的功能,例如從一個(gè)屬性文件中解析文本信息的能力,發(fā)布應(yīng)用程序事件給感興趣的事件監(jiān)聽器的能力。該容器是由 org.springframework.context.ApplicationContext 接口定義。 |
ApplicationContext 容器包括 BeanFactory 容器的所有功能,所以通常不建議使用BeanFactory。BeanFactory 仍然可以用于輕量級(jí)的應(yīng)用程序,如移動(dòng)設(shè)備或基于 applet 的應(yīng)用程序,其中它的數(shù)據(jù)量和速度是顯著。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: