IoC容器 Spring核心中的核心

2021-10-09 18:45:19 字數 1328 閱讀 1848

spring 容器是 spring 框架的核心。容器將建立物件,把它們連線在一起,配置它們,並管理他們的整個生命週期從建立到銷毀。spring 容器使用依賴注入(di)來管理組成乙個應用程式的元件。這些物件被稱為 spring bean。1

spring主要容器包括beanfactory

spring容器的作用是用來存放bean(需要交給spring管理的物件)並控制bean從產生到銷毀的整個生命週期,當應用程式需要用到某乙個bean時,通過容器的 ***getbean()***2

方法可以很方便的獲取到這個物件。

類對應基於註解的配置方式。以上兩種方式可通過如下**獲取bean物件:

/**

* 基於xml的配置方式獲取bean物件

*/public

static

void

main

(string[

] args)

/** * 基於註解的配置方式獲取bean物件

*/public

static

void

main

(string[

] args)

關於對ioc控制反轉的理解:

控制不反轉的情況下,編碼過程中如果需要使用乙個物件,如person類的物件,則通過new person()呼叫建構函式的方式直接建立物件,這種方式的缺點是每次都需要建立新的物件,使用n次就會建立n個物件,這種方式在特定場景下3

會產生不必要的效能損失。

引入了ioc機制後,所有的物件都會交給ioc容器管理,根據不同的配置,容器來控制物件什麼時候建立新物件,什麼時候銷毀。當需要使用乙個person物件時,通過依賴注入的方式新增對應的person物件依賴,而不一定建立新物件。

通過ioc機制,物件的控制者從開發者變成了ioc容器,即實現了控制反轉。

摘自: ↩︎

getbean()方法是beanfactory介面的基本方法,包括幾個過載的方法,可以通過名稱、型別、名稱+型別等方式獲取到對應的bean ↩︎

如:物件占用記憶體特別大,或可以反覆使用的物件等場景。這種場景可通過設計模式中的單例模式解決,spring框架中也大量使用單例模式 ↩︎

Spring的核心容器 IoC

簡單來說,beanfactory就是乙個管理bean的工廠,它主要負責初始化各種bean,並呼叫它們的生命週期方法 beanfactory factory newxmlbeanfactory new filesystemresource file beanfactory factory newxml...

Spring 核心(IOC) 容器的附加功能

為了以更面向框架的風格來增強beanfactory的功能,上下文包還提供了以下功能 1.使用messagesource國際化 通過實現messagesource介面定製國際化功能 也可以使用spring已提供的實現類 spring還提供了其子介面hierarchicalmessagesource,該...

Spring框架的IoC容器

ioc 是指在程式開發中,例項的建立不再由呼叫者管理,而是由 spring 容器建立。spring 容器會負責控制程式之間的關係,而不是由程式 直接控制,因此,控制權由程式 轉移到了 spring 容器中,控制權發生了反轉,這就是 spring 的 ioc 思想。打個比方 孩子長大了需要找老師,你需...