回覆列表
  • 1 # 網路圈

    無論是Java開發還是網際網路架構領域,Spring、Spring MVC、Spring Boot 這些專業術語會經常出現在我們眼前。這也無可厚非,畢竟這三者都是Java生態中較為重要的技術,而Spring框架毫不誇張的說更是顛覆性技術。那這三者是什麼樣的依附關係呢?下面我來做個總結供大家參考。

    Spring框架是基礎

    Spring是一款輕量級開源框架,它使用基本的JavaBean來代替EJB,透過容器管理JavaBean的配置和生命週期,而且提供了AOP、IoC這類高階特性。簡單說,Spring是一個輕量級的IoC(控制反轉)和AOP(面向切面)的容器框架(管理Bean的容器),基於Spring框架使得Java EE開發更為簡單了。

    Spring MVC是基於Spring開發的MVC框架

    Spring MVC它是基於Spring開發的一款輕量級MVC框架,Spring MVC必須要Spring的Jar包支援才能跑起來。也就是說,Spring MVC是Spring FrameWork的子產品,專門用來做Web開發的。

    Spring Boot是Spring的擴充套件升級,是一套完整的開發包

    在Spring Boot沒有面世之前,雖說Spring框架很優秀,但是Spring框架需要進行大量的、複雜的配置,依舊是很繁瑣的!於是Spring社群推出了Spring Boot。

    Spring Boot可以理解為是Spring框架的擴充套件版,它消除了Spring的XML配置,實現了自動配置,大大降低了專案開發的難度。

    Spring、Spring MVC、Spring Boot三者的關係
  • 2 # 大翔說

    簡單說來:

    Spring 是一個“引擎”。

    Spring MVC 是基於 Spring 的一個 MVC 框架。

    Spring Boot 是基於 Spring4 的條件註冊的一套快速開發整合包。

    核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要元件是 BeanFactory,它是工廠模式的實現。BeanFactory 使用控制反轉(IOC) 模式將應用程式的配置和依賴性規範與實際的應用程式程式碼分開。

    Spring 上下文:Spring 上下文是一個配置檔案,向 Spring 框架提供上下文資訊。Spring 上下文包括企業服務,例如 JNDI、EJB、電子郵件、國際化、校驗和排程功能。

    Spring AOP:透過配置管理特性,Spring AOP 模組直接將面向方面的程式設計功能整合到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何物件支援 AOP。Spring AOP 模組為基於 Spring 的應用程式中的物件提供了事務管理服務。透過使用Spring AOP,不用依賴 EJB 元件,就可以將宣告性事務管理整合到應用程式中。

    Spring DAO:JDBC DAO 抽象層提供了有意義的異常層次結構,可用該結構來管理異常處理和不同資料庫供應商丟擲的錯誤訊息。異常層次結構簡化了錯誤處理,並且極大地降低了需要編寫的異常程式碼數量(例如開啟和關閉連線)。Spring DAO 的面向JDBC 的異常遵從通用的 DAO 異常層次結構。

    .Spring ORM:Spring 框架插入了若干個 ORM 框架,從而提供了 ORM 的物件關係工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有這些都遵從 Spring 的通用事務和 DAO 異常層次結構。

    Spring Web 模組:Web 上下文模組建立在應用程式上下文模組之上,為基於 Web 的應用程式提供了上下文。所以,Spring 框架支援與 Jakarta Struts 的整合。Web 模組還簡化了處理多部分請求以及將請求引數繫結到域物件的工作。

    Spring MVC 框架:MVC 框架是一個全功能的構建 Web 應用程式的 MVC 實現。透過策略介面,MVC 框架變成為高度可配置的,MVC 容納了大量檢視技術,其中包括 JSP、Velocity、Tiles、iText 和 POI。

    Spring 框架的功能可以用在任何 J2EE 伺服器中,大多數功能也適用於不受管理的環境。Spring 的核心要點是:支援不繫結到特定 J2EE 服務的可重用業務和資料訪問物件。毫無疑問,這樣的物件可以在不同 J2EE 環境 (Web 或 EJB)、獨立應用程式、測試環境之間重用。

  • 中秋節和大豐收的關聯?
  • 泰國美食中你最不能接受的一款是哪個?