課程
/后端開發(fā)
/Java
/Spring入門篇
理解Spring的關鍵就在于理解容器,容器是干什么的,容器里面有什么?然后再去研究byName還是ByType,就會很清晰了。
2016-07-28
源自:Spring入門篇 3-4
正在回答
簡單的說,控制反轉是:創(chuàng)建對象不直接通過寫代碼new出來,而是交給Spring容器來創(chuàng)建。創(chuàng)建對象的控制權交給了Spring的Bean容器。
IOC控制反轉,依賴注入到spring的ApplicationContext容器中,容器可以理解成一個大工廠,里面有很多的機器配件,把這些配件組合起來可以有很多不同的組件,bean就好像是這些拼裝起來的組件,在實際的項目里就是一個個類,類里面所包含的方法屬性本身就好像組件所擁有的屬性和功能,而現(xiàn)實中,往往一臺高級機器不是一個組件就能拼裝起來的,是很多很多的組件一起拼裝的整體,好比是一只手表里面有很多很多的齒輪,齒輪彼此之間又相互依賴,一個不動出故障了,后面的也轉不起來,在項目里就是一個類依賴另外一個類的運行,所以我們引入IOC就是為了將這些依賴的關系都整合起來,例如在項目里如果你要實現(xiàn)一個類A的功能之前你不得不先去創(chuàng)建一個類B,那么類A和類B就耦合了,不利于維護,想象一下一只手表里面,一個齒輪依賴另一個齒輪,那么我在設計手表的時候如果我一步一步,先設計一個齒輪A,然后發(fā)現(xiàn)我要實現(xiàn)這個齒輪A我不得不再去設計另外一個齒輪B,讓B去帶動A,在后面B還是要依賴很多的CDF...這樣整個設計的很多依賴關系到最后會導致設計變得很復雜,那么我們能不能把這些依賴的關系給他轉移了,我在齒輪A這么一個類的需求上我再去設計一個齒輪類B,然后我調用的時候不需要在類A里面...講到這里你懂了吧應該
Edison2 提問者
翰生 回復 Edison2 提問者
舉報
為您帶來IOC和AOP的基本概念及用法,為后續(xù)高級課程學習打下基礎
2 回答如何學習spring
2 回答eclipse如何配置spring
1 回答spring的一個IOC容器怎么理解?
2 回答spring ioc的代理是cglib還是jdk
9 回答怎么學習spring?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-08-08
簡單的說,控制反轉是:創(chuàng)建對象不直接通過寫代碼new出來,而是交給Spring容器來創(chuàng)建。創(chuàng)建對象的控制權交給了Spring的Bean容器。
2016-07-29
IOC控制反轉,依賴注入到spring的ApplicationContext容器中,容器可以理解成一個大工廠,里面有很多的機器配件,把這些配件組合起來可以有很多不同的組件,bean就好像是這些拼裝起來的組件,在實際的項目里就是一個個類,類里面所包含的方法屬性本身就好像組件所擁有的屬性和功能,而現(xiàn)實中,往往一臺高級機器不是一個組件就能拼裝起來的,是很多很多的組件一起拼裝的整體,好比是一只手表里面有很多很多的齒輪,齒輪彼此之間又相互依賴,一個不動出故障了,后面的也轉不起來,在項目里就是一個類依賴另外一個類的運行,所以我們引入IOC就是為了將這些依賴的關系都整合起來,例如在項目里如果你要實現(xiàn)一個類A的功能之前你不得不先去創(chuàng)建一個類B,那么類A和類B就耦合了,不利于維護,想象一下一只手表里面,一個齒輪依賴另一個齒輪,那么我在設計手表的時候如果我一步一步,先設計一個齒輪A,然后發(fā)現(xiàn)我要實現(xiàn)這個齒輪A我不得不再去設計另外一個齒輪B,讓B去帶動A,在后面B還是要依賴很多的CDF...這樣整個設計的很多依賴關系到最后會導致設計變得很復雜,那么我們能不能把這些依賴的關系給他轉移了,我在齒輪A這么一個類的需求上我再去設計一個齒輪類B,然后我調用的時候不需要在類A里面...講到這里你懂了吧應該