來個高手給我解釋下Spring注入和依賴COPY網上的爬,最好寫上自己對注入和依賴的理解Thanks

時間 2022-11-20 18:15:37

1樓:匿名使用者

那個叫做依賴注入和控制反轉,都是乙個意思。簡單的來說就是不使用new來例項化獲取物件,而是使用spring工具類的getbean()方法去獲取呼叫(依賴)物件。詳細點的:

一、首先說什麼是依賴。

對於兩個相對獨立的物件,當乙個物件負責構造另乙個物件的例項,或者依賴另乙個物件的服務時,這兩個物件之間主要體現為依賴關係。

public class person

public static main(string args)

} 比如說你要去擰螺絲,你是不是要借助(呼叫)(也就是依賴)螺絲刀(screwdriver物件)來幫助你完成擰螺絲(screw)的工作。person--依賴-->screwdirver。

二、其次說說什控制的是什麼,誰來控制的。

這控制就體現在screwdriver screwdirver= new screwdriver();

控制:screwdriver物件的例項化(也就是new)的位置和時間。

誰來控制的?顯示是程式設計師手工呼叫new來去例項化物件的。

三、最後,說說什麼是依賴注入和控制反轉。

public class person

}} 上面**中沒有使用new,也就是說我們沒用控制screwdriver的例項化,這個是spring自己完成的,也就是我們把new這個物件的控制權交給了spring,這就是控制反轉(叫控制移交不也挺好的嘛)。那麼呼叫關係(也就是依賴關係)是由spring的getbean去實現的,也就是spring把這個依賴關係加入到程式中的,這個就是依賴注入。

小結:我個人感覺語言表達力不足,最後還是引用一下別人(caojunwei1987)的總結吧:

很簡單 ,就是本來你該做的事情 你不去做了 讓系統去做,比如,你獲取乙個物件的時候,往往需要new出例項來,如果用了控制反轉,那這件事情 就不需要你做了,你只需要在配置檔案xml中配置好,系統就幫你new了。控制反轉也叫依賴注入,就是把該用到的東西 提前注入進去,下次直接用 而不是每次都new。

最後,以上都是本人的個人看法,僅供參考。

2樓:匿名使用者

注入和依賴幹嘛分開說,依賴注入就是乙個完整名詞,就是指ioc,也叫控制反轉,沒有注入和依賴兩種東西。

最基本的依賴注入,在a類裡放乙個屬性變數 介面b,然後把實現了介面b的類b1賦值給這個介面,a通過介面b這個變數來呼叫b1的方法,就是依賴注入。

傳統方法是在a類裡new乙個b1的物件然後呼叫b1的方法class a

setb(b b1)

}通過setb方法,把乙個實現類b1注入到類a的介面變數b

3樓:充秋梵玉

ioc是控制反轉,所謂反轉是指應用本身並不負責依賴物件的建立和維護,而把這個任務交給第三方即spring去處理,這是將建立物件的權利交給第三方,控制反轉就是控制權的轉移

di是依賴注入.依賴注入,是指執行期間,spring動態的將依賴物件注入到元件中

以下內容:一家之言僅供參考如對樓主產生了什麼***概不負責我認為他們是不同的概念,乙個是負責建立例項的,但並不引入例項另乙個是引入例項的,側重點不同,

4樓:

spring 的作用 主要 是 容器管理,大致可以分為 ioc 和aop 其中 ioc 就是 所謂 的 依賴注入 也可以叫做 控制反轉,其主要作用 是為了 建立 實體物件的,進行注入管理,也就是當我們想要 例項物件的時候 直接拿 ,而不在用new 關鍵字了,在以前 建立例項物件的時候 我們通常是用得new關鍵字。

具體原理 如樓上的

5樓:

注入:注入的方法:

a 使用構造器注入

b 使用屬性setter方法注入

c 使用field注入(用於註解方式)即使用字段注入注入依賴物件可以採用手工裝配或自動裝配,在實際的應用開發中建議使用手工裝配,因為自動裝配會產生未知的情況 開發人員無法預見最終的裝配結果

依賴:a a =new ainstance();

a 依賴與ainstance()

spring容器通過來例項化a 這樣a就依賴與spring 容器 spring 容器通過注入給元件

夢幻高手進 來個個解釋卡89的來

血耐dt並不是不強.但是如果你傷害不高.人家就會說你垃圾 什麼的.血耐dt 藥戰其實好厲害 如果在pk時 加上隊友的完全配合.可以說完美.我建議你把速度提上點.傷害也應該.如果你是好厲害的話 120強身應該有的.修也不少的.在平時任務什麼的 怪應該是打不入的.傷害速度 也重要 不可少的.你這區我不懂...

來個高手幫幾首歌,來個高手幫推薦幾 首歌

樓主 我知道你什麼意思了 walking inthe sun冰河時代3 花蝴蝶獨 一無二是這種型別嗎?我還有好多 樓上那人不是說不選多的。還寫那麼多。from sarah with love i mgonna find youjust onelast dance music isthe keylov...

尋仙離巽坎應該打哪個。來個高手解釋下卦的效果。問了人給我答案,我糾結啊

請問你是什麼職業呢。離卦 新增最終傷害輸出4 騎寵及人物移動速度5 攻擊力80點。新增最終傷害輸出4 騎寵及人物移動速度5 40點法效 坎卦 物理 2星 增加生命恢復10點 增加忽略280點 每10秒恢復生命100點 騎寵及任務移動速度提高5 法系 2星 增加生命恢復10點 增加忽略法術抗性68點 ...

來個英語高手翻譯一下可好,來個英語高手 來翻譯一下 謝謝你

靆曉 大家早上好,歡迎來到浙江大學 作為乙個大一新生,你將面臨乙個完全不同的新生活。下面是我需要你們牢記在心的。第一,合理安排你的時間你最好安排個時間表,這樣你會知道自己要做什麼,怎樣合理利用每一分鐘。它會讓你的工作更有效率。在這個大學生活,有時你會面臨一些問題你不能獨自處理。尋求別人的幫助就顯得很...

收付轉憑證來個高手

這個怎麼說了,這完全不需要高手就能給你解答,學過會計的人都應該知道。掛應付賬款有幾種原因 一 公司取得材料 費用等發票需要入賬但不需要馬上付款,這樣可以掛往來科目。二 掛應付賬款這樣可以看到分 商往來明細,方便查賬。其實你每筆付款都可以掛應付賬款,只要有對應的專案可以入賬。這沒限制的,掛了往來比沒掛...