控制反轉(IoC,Inversion of Control),是一個概念,是一種思想。指將傳統上由程序代 碼直接操控的對象調用權交給容器,通過容器來實現對象的裝配和管理。控制反轉就是對對象控制權的轉移,從程序代碼本身反轉到了外部容器。通過容器實現對象的裝配和管理。
IoC 是一個概念,是一種思想,其實現方式多種多樣。當前比較流行的實現方式是依賴 注入。應用廣泛。
依賴:classA 類中含有 classB 的實例,在 classA 中調用 classB 的方法完成功能,即 classA 對 classB 有依賴。
● 依賴查找:DL ( Dependency Lookup ), 容器提供回調接口和上下文環境給組件。
● 依賴注入:DI (Dependency Injection),程序代碼不做定位查詢,這些工作由容器自 行完成。
依賴注入 DI 是指程序運行過程中,若需要調用另一個對象協助時,無須在代碼中創建被調用者,而是依賴于外部容器,由外部容器創建后傳遞給程序。
Spring的依賴注入對調用者與被調用者幾乎沒有任何要求,完全支持 POJO 之間依賴關系的管理。
依賴注入是目前最優秀的解耦方式。依賴注入讓 Spring 的 Bean 之間以配置文件的方式 組織在一起,而不是以硬編碼的方式耦合在一起的。
Spring框架使用依賴注入(DI)實現IoC。
Spring容器是一個超級大工廠,負責創建、管理所有的Java對象,這些Java對象被稱為Bean。Spring容器管理著容器中Bean之間的依賴關系,Spring使用“依賴注入”的方式來管理Bean之間的依賴關系。使用IoC實現對象之間的解耦和。
開發工具:idea2017以上
依賴管理:maven3以上
jdk:1.8以上
需要設置maven本機倉庫: