更新時間:2022-11-01 09:13:49 來源:動力節點 瀏覽1786次
Spring是一個開源輕量級框架,它允許 Java EE 7 開發人員構建簡單、可靠和可擴展的企業應用程序。該框架主要側重于提供各種方法來幫助您管理業務對象。與 Java 數據庫連接 (JDBC)、JavaServer Pages (JSP) 和 Java Servlet 等經典 Java 框架和應用程序編程接口 (API) 相比,它使 Web 應用程序的開發更加容易。該框架使用各種新技術,如面向切面編程 (AOP)、普通 Java 對象 (POJO)和依賴注入 (DI) 來開發企業應用程序。
Spring IoC(控制反轉)容器是 Spring Framework 的核心。它創建對象,配置和組裝它們的依賴關系,管理它們的整個生命周期。容器使用依賴注入(DI)來管理組成應用程序的組件。它從配置文件 (XML) 或 Java 代碼或 Java 注釋和 Java POJO 類中獲取有關對象的信息。這些對象稱為 Bean。由于 Java 對象及其生命周期的控制不是由開發人員完成的,因此稱為控制反轉。以下是 Spring IoC 的一些主要特性,
為我們創建對象,
管理我們的對象,
幫助我們的應用程序可配置,
管理依賴項
依賴注入是Spring IOC(Inversion of Control)提供的主要功能。Spring-Core 模塊負責通過 Constructor 或 Setter 方法注入依賴項。控制反轉的設計原則強調保持Java類相互獨立,容器將它們從對象創建和維護中解放出來。這些由 Spring 管理的類必須遵守 Java-Bean 的標準定義。Spring 中的依賴注入還確保了類之間的松散耦合。Spring 依賴注入有兩種類型。
Setter 依賴注入 (SDI)
構造函數依賴注入 (CDI)
1.Setter 依賴注入 (SDI)
Setter Injection 是兩種依賴注入方法中更簡單的一種。在此,依賴注入將在 setter 和/或 getter 方法的幫助下注入。現在要在 bean 中將 Dependency Injection 設置為 Setter Injection,它是通過 bean-configuration 文件完成的。為此,要使用 Setter Injection 設置的屬性在 bean-config 文件中的<property>標記下聲明。
2.構造函數依賴注入(CDI)
在構造函數注入中,依賴注入將在構造函數的幫助下被注入。現在要將依賴注入設置為bean中的構造函數依賴注入,它是通過bean配置文件完成的。為此,要使用 CDI 設置的屬性在 bean-config 文件中的<constructor-arg>標記下聲明。
最后,讓我們通過下表描述它們之間的激烈差異,以便更好地理解,因為如果不深入理解,總會存在兩難境地。
Spring IoC(控制反轉) | Spring 依賴注入 |
---|---|
Spring IoC Container 是 Spring Framework 的核心。它創建對象,配置和組裝它們的依賴關系,管理它們的整個生命周期。 | Spring依賴注入是通過spring的以下方式注入框架組件的依賴的一種方式:構造函數注入和Setter注入 |
由于 IoC(控制反轉),Spring 有助于創建對象、管理對象、配置等。 | 由于依賴注入,Spring 框架有助于創建松散耦合的應用程序。 |
Spring IoC 是通過依賴注入實現的。 | 依賴注入是提供依賴的方法,控制反轉是依賴注入的最終結果。 |
IoC 是一種設計原則,其中程序的控制流是倒置的。 | 依賴注入是 IOC 原則的子類型之一。 |
面向方面的編程是實現控制反轉的一種方法。 | 如果業務需求發生任何變化,則無需更改代碼。 |
以上就是關于“Spring依賴注入和控制反轉的區別”介紹,大家如果想了解更多相關知識,不妨來關注一下動力節點的Spring教程,里面還有更豐富的知識等著大家去學習,希望對大家能夠有所幫助哦。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習