javascript
Spring IOC (DI-依赖注入)
看到一篇文章,講Spring的依賴注入講的很好理解,也很容易理解,非常詳細。原文地址:
https://blog.csdn.net/javazejian/article/details/54561302
Spring IOC 也是一個java對象,在某些特定的時間被創(chuàng)建后,可以進行對其他對象的控制,包括初始化、創(chuàng)建、銷毀等。簡單地理解,在上述過程中,我們通過配置文件配置了BookDaoImpl實現類的完全限定名稱,然后利用反射在運行時為BookDao創(chuàng)建實際實現類,包括BookServiceImpl的創(chuàng)建,Spring的IOC容器都會幫我們完成,而我們唯一要做的就是把需要創(chuàng)建的類和其他類依賴的類以配置文件的方式告訴IOC容器需要創(chuàng)建那些類和注入哪些類即可。Spring通過這種控制反轉(IoC)的設計模式促進了松耦合,這種方式使一個對象依賴其它對象時會通過被動的方式傳送進來(如BookServiceImpl被創(chuàng)建時,其依賴的BookDao的實現類也會同時被注入BookServiceImpl中),而不是通過手動創(chuàng)建這些類。我們可以把IoC模式看做是工廠模式的升華,可以把IoC看作是一個大工廠,只不過這個大工廠里要生成的對象都是在配置文件(XML)中給出定義的,然后利用Java的反射技術,根據XML中給出的類名生成相應的對象。從某種程度上來說,IoC相當于把在工廠方法里通過硬編碼創(chuàng)建對象的代碼,改變?yōu)橛蒟ML文件來定義,也就是把工廠和對象生成這兩者獨立分隔開來,目的就是提高靈活性和可維護性,更是達到最低的耦合度,因此我們要明白所謂為的IOC就將對象的創(chuàng)建權,交由Spring完成,從此解放手動創(chuàng)建對象的過程,同時讓類與類間的關系到達最低耦合度。
IOC與依賴注入的區(qū)別:
IOC:控制反轉:將對象的創(chuàng)建權,由Spring管理.?
DI(依賴注入):在Spring創(chuàng)建對象的過程中,把對象依賴的屬性注入到類中。?
轉載于:https://www.cnblogs.com/xiaojing0628/p/8629353.html
總結
以上是生活随笔為你收集整理的Spring IOC (DI-依赖注入)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: maven 工程依赖了某个jar包 但还
- 下一篇: Mac OS X下安装和配置Maven