什麼是 Spring?
Spring 是個 Java 企業級應用的開源開發框架。Spring 主要用來開發 Java 應用,但是有些擴充套件是針對構建 J2EE 平臺的 web 應用。Spring 框架目標是簡化 Java 企業級應用開發,並通過 POJO 為基礎的程式設計模型促進良好的程式設計習慣。
使用 Spring
輕量:Spring 是輕量的,基本的版本大約 2MB。
控制反轉:Spring 通過控制反轉實現了鬆散耦合,物件們給出它們的依賴,而不是建立或查詢依賴的物件們。
面向切面的程式設計(AOP): :Spring 支援面向切面的程式設計,並且把應用業務邏輯和系統服務分開容器:Spring 包含並管理應用中物件的生命週期和設定。
MVC 框架:Spring 的 WEB 框架是個精心設計的框架,是 Web 框架的一個很好的替代品。
事務管理:Spring 提供一個持續的事務管理介面,可以擴充套件到上至本地事務下至全域性事務(JTA)。
例外處理: :Spring 提供方便的 API 把具體技術相關的異常(比如由 JDBC,Hibernate or JDO丟擲的)轉化為一致的 unchecked 異常。
Spring 由哪些模組組成?
以下是 Spring 框架的基本模組:
Core module
Bean module
Context module
Expression Language module
JDBC module
ORM module
OXM module
Java Messaging Service(JMS) module
Transaction module
Web module
Web-Servlet module
Web-Struts module
Web-Portlet module
核心容器(應用上下文) 模組
這是基本的 Spring 模組,提供 spring 框架的基礎功能,BeanFactory 是 任何以 spring 為基礎的應用的核心。Spring 框架建立在此模組之上,它使 Spring 成為一個容器。
BeanFactory – BeanFactory 實現舉例
Bean 工廠是工廠模式的一個實現,提供了控制反轉功能,用來把應用的設定和依賴從真正的應用程式碼中分離。最常用的 BeanFactory 實現是 XmlBeanFactory 類。
XMLBeanFactory
最常用的就是 org.springframework.beans.factory.xml.XmlBeanFactory ,它根據 XML 檔案中的定義載入 beans。該容器從 XML 檔案讀取設定後設資料並用它去建立一個完全設定的系統或應用。
解釋 AOP 模組
AOP 模組用於發給我們的 Spring 應用做面向切面的開發, 很多支援由 AOP 聯盟提供,這樣就確保了 Spring 和其他 AOP 框架的共通性。這個模組將後設資料程式設計引入 Spring。
解釋 JDBC 抽象和 DAO 模組
通過使用 JDBC 抽象和 DAO 模組,保證資料庫程式碼的簡潔,並能避免資料庫資源錯誤關閉導致的問題,它在各種不同的資料庫的錯誤資訊之上,提供了一個統一的異常存取層。它還利用 Spring 的 AOP 模組給 Spring 應用中的物件提供事務管理服務。
解釋物件/ 關係對映整合模組
Spring 通過提供ORM 模組,支援我們在直接JDBC之上使用一個物件/關係對映對映(ORM)工具,Spring 支援整合主流的 ORM 框架,如 Hiberate,JDO 和 iBATIS SQL Maps。Spring的事務管理同樣支援以上所有 ORM 框架及 JDBC。
解釋 WEB 模組
Spring 的 WEB 模組是構建在 application context 模組基礎之上,提供一個適合 web 應用的上下文。這個模組也包括支援多種面向 web 的任務,如透明地處理多個檔案上傳請求和程式級請求引數的繫結到你的業務物件。它也有對 Jakarta Struts 的支援。
Spring 組態檔
Spring 組態檔是個 XML 檔案,這個檔案包含了類資訊,描述瞭如何設定它們,以及如何相互呼叫。
什麼是 Spring IOC 容器?
Spring IOC 負責建立物件,管理物件(通過依賴注入(DI),裝配物件,設定物件,並且管理這些物件的整個生命週期。
這份Spring面試檔案總共69題,需要完整版的朋友,可以點贊此文關注小編,私信小編【面試】來獲取!!
徹底搞懂Spring 迴圈依賴問題
Spring 這麼簡單,你還不會?
Spring面試講解視訊和筆記獲取,點贊關注小編,私信【面試】獲取!
好了,今天就分享到這裡了。如果這篇文章你覺得還不錯的話,歡迎關注。