Spring的依賴注入

2021-08-31 11:15:27 字數 1451 閱讀 8641

依賴注入

1、 什麼是依賴?

依賴指的是類之間的訪問關係。如果類a訪問類b的屬性或方法或者類a負責例項化類b,那麼可以說類a依賴類b,和關聯關係不同,無需把類b定義為類a的屬性。在spring中是通過注入來實現依賴關係的。

2、 什麼是依賴注入?

依賴注入

背後的基本原理是物件之間的依賴關係(即一起工作的其它物件)只會通過以下幾種方式來實現:構造器的引數、工廠方法的引數,或給由建構函式或者工廠方法建立的物件設定屬性。

依賴注入作用

:容器的工作就是建立bean時注入那些依賴關係。相對於由bean自己來控制其實例化、直接在構造器中指定依賴關係這些自主控制依賴關係注入的方法來說,控制從根本上發生了倒轉,這也正是控制反轉(inversion of control, ioc) 名字的由來。 應用此原則後,**將更加清晰。而且當bean自己不再擔心物件之間的依賴關係(甚至不知道依賴的定義指定地方和依賴的實際類)之後,實現更高層次的松耦合。

依賴注入的主要注入方式有

:setter注入和構造器注入。

此外還有介面注入,在此重點介紹setter注入和構造器注入。

3、 setter注入介紹

setter注入通過呼叫無參構造器或無參

static

工廠方法例項化bean之後,呼叫該bean的setter方法,即可實現基於setter的注入。

下面通過乙個例子進行介紹:

建立乙個dao介面,介面中有insert和delete兩個方法,

建立繼承此介面的類goodsdao,

建立乙個業務實現類goodsdaoimpl實現了goodsdao介面,

建立乙個goods類,包含name和price屬性,並實現相應的get和set方法

建立goodsaction類進行真正的業務處理,包含乙個goodsdaoimpl型別的屬性及其get,set方法,還有inert和delete方法**如下:

public class goodsaction 

public string delete()  }

建立test測試類,在main方法裡測試**如下:

public static void main(string args) 

4、 構造器注入介紹

構造器的注入通過呼叫帶引數的構造器來實現,每個引數代表著乙個依賴。

構造器注入方式:構造器引數型別匹配和構造引數索引。

下面通過乙個例子進行介紹:

首先在上面的goods類中新增預設構造器和帶有引數的構造器**如下:

public class goods 

public goods(string name,double price)

/***實現相應的get,set方法/

…………… }

然後在配置檔案中進行配置**如下:

"/>

最後在測試類test裡測試**如下:

public class test }

spring 依賴注入 Spring依賴注入

依賴注入 dependency injection,簡稱di 與控制反轉 ioc 的含義相同控制反 在使用spring框架之後,物件的例項不再由呼叫者來建立,而是由spring容器來建立,spring容器會負責控制程式之間的關係,而不是由呼叫者的程式 直接控制,這樣控制權由應用程式轉移到了sprin...

Spring依賴注入

所謂依賴注入,是指在程式執行過程中,如果需要呼叫另乙個物件協助時,無須在 中建立按被呼叫者,而是依賴外部注入。spring 的依賴注入對呼叫者和被呼叫者幾乎沒有任何要求,完全支援對 pojo 之間依賴關係的管理。依賴注入的兩種方式 1 設值注入 設值注入是指通過 setter 方法傳入被呼叫者的例項...

SPring依賴注入

所謂依賴注入,是指在程式執行過程中,如果需要呼叫另乙個物件協助時,無須在 中建立按被呼叫者,而是依賴外部注入。spring的依賴注入對呼叫者和被呼叫者幾乎沒有任何要求,完全支援對pojo之間依賴關係的管理。依賴注入的兩種方式 1 設值注入 設值注入是指通過setter方法傳入被呼叫者的例項。這種注入...