Spring之依賴注入 DI 的理解

2021-09-12 17:51:10 字數 626 閱讀 3435

舉個例子,假如我需要乙隻紅顏色的筆

定義乙個紅筆類實現了pen介面,定義乙個紅色替芯為私有變數

public class redpen implements pen

public void use()

}

上面的類實現了我們的需求,但現實生活中需求變的比女朋友的心情還快,如果我需要綠色的筆呢?或者其他顏色?當然可以實現,寫乙個greenpen實現pen介面,定義乙個綠色筆芯,這的確可以做到,但你會發現這樣做會有大量的重複**,而且筆和筆芯耦合太大,難以分開。

我們可以試試這樣做:

該類不用自己建立筆芯,由構造器傳入,所有顏色筆芯皆實現refill介面

public class sevencolorpen implements pen

public void use()

}

這樣的實現大大降低了筆和筆芯的耦合,你可以傳入任意顏色的筆芯來得到任何顏色的筆,這就是依賴注入的方法。在spring中這種可被注入的物件成為bean,他們由容器控制注入到需要的地方,這也讓人聯想到依賴注入的另乙個稱呼–控制反轉(ioc),所謂控制反轉就是原來由類手動建立的物件現在可以由容器控制注入其中。

具體如何注入則由相應的xml配置,也可通過註解配置

Spring依賴注入(DI)

在spring框架中,依賴注入 di 的設計模式是用來定義物件彼此間的依賴。它主要有兩種型別 這是最流行最簡單的di注入方法,通過設定方法注入依賴。示例 幫助器類和指定的setter方法 package com.yiibai.output import com.yiibai.output.ioutp...

Spring依賴注入 DI

在我們的pojo類中需要get和set方法 public class student public void setname string name public address getaddress public void setaddress address address public str...

spring學習之DI依賴注入

何為di 傳統的物件與物件的呼叫,使得以後修改 變得困難,在spring得ioc控制反轉下,使得在上層呼叫下層的耦合性得到了緩解,不過還是得使用getbean方法去獲得,di的依賴注入,使得spring容器直接在xml檔案中配置,動態的使得物件與物件之間的注入關係變成動態行為,即spring框架負責...