依賴注入是反轉(zhuǎn)控制的一種。
我們平常寫(xiě)程序,需要什么對(duì)象,就在代碼里顯式地?new
?一個(gè)出來(lái)然后使用,這是我們自己去控制對(duì)象的生成。
而反轉(zhuǎn)控制是讓?Spring
?(或者類似的其他工具)幫忙去生成我們需要的對(duì)象,也就是說(shuō)對(duì)象的生成的控制權(quán)交給?Spring
?了。
當(dāng)然,?Spring
?需要依據(jù)一定的規(guī)則去生成對(duì)象,這個(gè)規(guī)則就在我們寫(xiě)的?xml
?配置文件、或者代碼中添加的注解之中。
換句話說(shuō),我們不要生成對(duì)象,但是要去寫(xiě)配置。
據(jù)說(shuō),反轉(zhuǎn)控制可用于解耦。這個(gè)在小型的項(xiàng)目中很難看出來(lái),項(xiàng)目越大越能感受得到。(我是沒(méi)寫(xiě)過(guò)這方面的大的項(xiàng)目,想著?xml
?配置就頭疼)
反轉(zhuǎn)控制的實(shí)現(xiàn)中應(yīng)用了大量的反射。
聲明依賴關(guān)系,?Spring
?將對(duì)象?A
?需要的對(duì)象?B
?注入到對(duì)象?A
?中。
google Spring 依賴注入
。
更多建議: