如何理解Spring反向注入?(Spring 之旅)

2019-04-14 20:03发布

    1 我們平時正常思維是什麼?而spring的反向注入如何理解?
      帶這些問題,開始我的Spring 之旅       以前的關係如下圖
            現在的關係如下圖
     
Spring 的核心概念是 IoC,IoC 的抽象概念是「依賴關係的轉移」,像是「高層模組不應該依賴低層模組,而是模組都必須依賴於抽象」是 IoC 的一種表現,「實現必須依賴抽象,而不是抽象依賴實現」也是 IoC 的一種表現,「應用程式不應依賴於容器,而是容器服務於應用程式」也是 IoC 的一種表現。(通俗理解:兒子要聽爸爸的)
2.主要注重开发中间接口应用程式容器松耦合
IoC要求的是容器不侵入應用程式本身,應用程式本身提供好介面,容器可以透過這些介面將所需的資源注至至程式中,應用程式不向容器主動要求資源,故而不會依賴於容器的元件,應用程式本身不會意識到正被容器使用,可以隨時從容器中脫離轉移而不用作任何的修改,而這個特性正是一些業務邏輯中間件最需要的。