ioc:inversion of control(控制反轉的英文縮寫),依賴物件的獲得被反轉了,一般是通過di(dependency injection 依賴注入)來實現的,可以大大降低類之間的耦合度。
ioc&di是spring等框架的核心,或者說是基石,如果沒有ioc容器&di就沒有spring等框架。
作為進入spring的bean容器的根介面,定義了bean容器的基本功能,函式如圖
其中&符號是用來取factory的,如果對factory產生的bean取&,則會返回產生這個bean的工廠bean。
注意區分factorybean和beanfactory:
factorybean是生產者,生產bean
beanfactory是乙個工廠,負責bean資訊的獲取和管理,factorybean也是bean,所以也是beanfactory管。
二者關係就像工人和工廠的關係,前者作為工人生產產品,本身也屬於工廠管,而產品要出廠不是生產出來就行,還要貼標,出廠等操作,這些就是後者的工作。前面所說的&符號取的就是生產工人beanfactory
spring入門之IOC容器
ioc 其思想是反轉資源獲取的方向,傳統的資源查詢方式要求元件向容器發起請求查詢資源,作為回應,容器適時的返回資源 應用ioc後,容器主動地將資源推送給它所管理的元件,元件選擇一種合適的方式來接受資源 di 是ioc的另一種表達方式 即元件以一些預先定義好的方式 例如setter方法 接受來自容器的...
spring學習之IoC容器
jinnianshilongnian 寫道 理解ioc容器問題關鍵 控制的哪些方面被反轉了?1 誰控制誰?為什麼叫反轉?ioc容器控制,而以前是應用程式控制,所以叫反轉 2 控制什麼?控制應用程式所需要的資源 物件 檔案 3 為什麼控制?解耦元件之間的關係 4 控制的哪些方面被反轉了?程式的控制權發...
玩轉Spring 之 IOC容器
提到spring,我們應該印象最深刻的就是ioc inversion of control 即控制反轉。關於ioc,其實是一種設計理念,只是spring將這個理念體現的淋漓盡致,所以一說到spring,我們固然會很快的聯想到ioc。ioc還有另外乙個名字叫di dependency injectio...