Spring中控制反轉和依賴注入的深入理解

2021-09-02 21:26:35 字數 707 閱讀 2502

1、控制反轉(ioc:invocatoin of controll):

控制反轉並不是一種技術,只是一種設計的思想。傳統建立物件是自己在**中直接 person person = new person()這樣來例項化的。在spring中有乙個容器叫做ioc容器,專門用來管理物件的建立。在使用spring框架的時候, 因為person person =new person()這樣的操作直接就交給ioc容器來實現了,所有我們就可以直接使用person物件的例項了。

2、依賴注入(di:dependency injection):

程式在執行期間,ioc容器動態的將動態的關係注入到元件中。例如person(使用者)物件需要呼叫persondetail物件(使用者明細表),傳統的方法中,在person物件要先例項化persondetail物件,然後person物件才可以使用persondetail物件中的方法。使用ioc容後,person在需要使用persondetail物件的時候,ioc容器會把persondetail的例項通過動態注入的方式注入到person物件中,這樣就不需要我們去例項化persondetail物件了。

3、控制反轉和依賴注入的區別:它們說的是乙個概念,但是從不同方面進行描述的。控制反轉很容易理解為ioc容器控制物件的建立,沒有很具體的描述物件之間的關係是如何維護的。為了區分這個概念,2023年martin fowler又重新給了乙個定義「依賴注入」,「依賴注入」描述了物件是依賴ioc容器來管理物件之間的關係的。

輕鬆了解Spring中的控制反轉和依賴注入

在介面中定義要注入的資訊,並通過介面來完成注入。spring不支援這種注入方式 不支援的原因是 spring聲稱其是非入侵式的 離開這個框架也能活 如果使用介面注入的話,就違背了這一原則 這裡不做 實現講解。我們先脫離spring來實現setter注入,分兩步,第一步我們先看看在常規的做法下類之間的...

spring中控制反轉和依賴注入

spring框架是乙個控制反轉和面向切面的開源框架,主要作用是簡化企業應用開發。一提到spring,大家都會想到控制反轉和依賴注入的概念,關於這兩個概念有很多的解釋。控制反轉就是應用本身不負責依賴物件的建立和維護,依賴物件的建立和維護由外部容器負責,這樣控制權由原先的應用本身轉移到了容器,控制權發生...

Spring框架介紹 l了解控制反轉依賴注入

spring是乙個輕量級框架。它可以被認為是乙個框架的框架,因為它支援各種框架,如struts hibernate tapestry ejb jsf等。從更廣泛的意義上說,框架可以定義為乙個我們可以找到各種技術問題解決方案的結構。讓我們先了解ioc和依賴注入。控制反轉 ioc 和依賴注入 控制反轉 ...