ioc:其思想是反轉資源獲取的方向,傳統的資源查詢方式要求元件向容器發起請求查詢資源,作為回應,容器適時的返回資源 應用ioc後,容器主動地將資源推送給它所管理的元件,元件選擇一種合適的方式來接受資源
di:是ioc的另一種表達方式:即元件以一些預先定義好的方式(例如setter方法)接受來自容器的資源注入
ioc的前身:
1、分離介面和實現
耦合度是最高的方式
2、採用工廠設計模式
耦合度降低
**複雜
3、採用反轉控制
建立ioc容器
在讀取bean配置建立bean例項之前,必須對它進行例項化,只有在容器例項化後,才可以從ioc容器中獲取bean例項使用
配置bean
配置形式:
1、基於xml檔案的方式
2、基於註解的方式
配置方式:
1、通過全類名(反射)
2、通過工廠方法
3、factorybean
依賴注入的方式:
1、屬性注入
即通過setter方法注入bean的屬性值或依賴的物件 這是實際應用中最常用的注入方式
2、構造器注入
在元素裡宣告屬性 這裡沒有name屬性
ioc的例項有倆種形式:
1、beanfactory:ioc容器的基本實現
beanfactory是spring框架的基礎設施,面向spring本身;
(從檔案系統中載入配置檔案)
從ioc容器中獲取bean例項
getbean()
通過id獲取:通過id定位到容器中的bean
通過型別獲取(類.class) 要求在bean中配置是唯一的
。。。
spring學習之IoC容器
jinnianshilongnian 寫道 理解ioc容器問題關鍵 控制的哪些方面被反轉了?1 誰控制誰?為什麼叫反轉?ioc容器控制,而以前是應用程式控制,所以叫反轉 2 控制什麼?控制應用程式所需要的資源 物件 檔案 3 為什麼控制?解耦元件之間的關係 4 控制的哪些方面被反轉了?程式的控制權發...
Spring之IOC容器篇
ioc inversion of control 控制反轉的英文縮寫 依賴物件的獲得被反轉了,一般是通過di dependency injection 依賴注入 來實現的,可以大大降低類之間的耦合度。ioc di是spring等框架的核心,或者說是基石,如果沒有ioc容器 di就沒有spring等框...
玩轉Spring 之 IOC容器
提到spring,我們應該印象最深刻的就是ioc inversion of control 即控制反轉。關於ioc,其實是一種設計理念,只是spring將這個理念體現的淋漓盡致,所以一說到spring,我們固然會很快的聯想到ioc。ioc還有另外乙個名字叫di dependency injectio...