IOC容器簡介

2021-08-15 20:53:21 字數 1246 閱讀 9658

了解到spring框架的兩大核心模組:ioc容器和aop

原始碼分析首先從ioc容器開始,之後再來看aop

這一篇我們先來了解一下什麼是ioc容器,以及ioc容器的功能

1)正常開發模式(非依賴反轉)

正常的,合作物件的引用或依賴關係的管理由具體物件來完成(持有被引用的物件),

這導致了**高度耦合並且降低了**的可測試性

2)依賴反轉,反轉了什麼

所謂依賴反轉(控制反轉),其實是依賴物件的獲得被反轉了,所以也被稱作依賴注入
3)依賴反轉的開發模式

在spring框架中,ioc容器是依賴控制反轉模式實現的載體

將物件的依賴注入交給框架或ioc容器來完成,解耦**的同時提高了**的可測試性

4)注入方式

ioc容器可以在物件生成或初始化時直接將資料注入到物件中

也可以通過將物件引用注入到物件資料域中的方式來注入對方法呼叫的依賴

這種依賴注入是可遞迴的,物件被逐層注入

5)使用ioc容器的優點

ioc容器將物件的依賴關係有序地建立起來

簡化了物件依賴關係的管理和物件導向系統的複雜性

應用控制反轉後,當物件被建立時,由乙個ioc容器將依賴物件注入到物件中

所以,控制反轉是關於乙個物件如何獲取它鎖依賴物件的引用,這裡的反轉指的是責任的反轉

通過使用ioc容器,物件依賴關係的管理被反轉到了ioc容器中

物件之間的相互依賴關係由ioc容器進行管理,並由ioc容器完成物件的注入

在很大程度上簡化了應用的開發,把應用從複雜的物件依賴關係管理中解放出來

如果將物件導向系統中的物件進行簡單的分類,會發現除了一部分是資料外,其他大多數物件時用來處理資料的這些物件並不常發生變化,是系統中的基礎部分

很多情況下,這些物件在系統中以單件的行書起作用就可以滿足應用的需求,且不常涉及資料和狀態

ioc容器:就是具有依賴注入功能的容器,是可以建立物件的容器,ioc容器負責例項化、定位、配置應用程式中的物件及建立這些物件間的依賴。通常new乙個例項,控制權由程式設計師控制,而"控制反轉"是指new例項工作不由程式設計師來做而是交給spring容器來做。。在spring中beanfactory是ioc容器的實際代表者。

di(依賴注入dependency injection) :在容器建立物件後,處理物件的依賴關係。

IOC容器簡介和學習大綱

了解到spring框架的兩大核心 ioc和aop 我們的原始碼分析首先就來學習spring的ioc容器,之後是aop 這一篇我們先了解一下什麼是ioc容器以及後續ioc容器部分學習大綱 1 常規方式建立物件 正常情況下,多個類相互配合工作,在入口類通過new來建立所依賴的物件例項 持有引用 2 控制...

Spring學習01 IOC容器(簡介,注入)

1 ioc ioc 控制反轉 本來應該有應用程式管理的物件之間的依賴關係,現在交給容器管理,這就是控制反轉的定義,即交給了ioc容器。spring的ioc主要是依賴於di 注入 實現的,不需要應用程式去主動查詢,物件的查詢 定位 建立都交由容器管理。2 spring的優勢 1 大量減少了factor...

手寫IOC容器

ioc原理簡述 所謂ioc,對於spring框架來說,就是由spring負責控制物件的生命週期和物件間的關係。說白了也就是我們在建立物件時,由原先的程式設計師建立物件反轉為由容器控制這些操作,在bean工廠中建立物件,程式設計師只需要在使用某個物件時直接從容器中獲取。1 配置需要容器進行管理的bea...