0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SpringBoot與SpringMVC的區(qū)別

jf_78858299 ? 來源:Java知音 ? 作者:Java知音 ? 2023-04-07 14:41 ? 次閱讀

Spring 框架就像一個家族,有眾多衍生產品例如 boot、security、jpa等等。但他們的基礎都是Spring 的 ioc和 aop ioc 提供了依賴注入的容器 aop ,解決了面向橫切面的編程,然后在此兩者的基礎上實現(xiàn)了其他延伸產品的高級功能。

Spring MVC是基于 Servlet 的一個 MVC 框架 主要解決 WEB 開發(fā)的問題,因為 Spring 的配置非常復雜,各種XML、 JavaConfig、hin處理起來比較繁瑣。于是為了簡化開發(fā)者的使用,從而創(chuàng)造性地推出了Spring boot,約定優(yōu)于配置,簡化了spring的配置流程。

說得更簡便一些:Spring 最初利用“工廠模式”(DI)和“代理模式”(AOP)解耦應用組件。大家覺得挺好用,于是按照這種模式搞了一個 MVC框架(一些用Spring 解耦的組件),用開發(fā) web 應用( SpringMVC )。然后有發(fā)現(xiàn)每次開發(fā)都寫很多樣板代碼,為了簡化工作流程,于是開發(fā)出了一些“懶人整合包”(starter),這套就是 Spring Boot。

Spring MVC的功能

Spring MVC提供了一種輕度耦合的方式來開發(fā)web應用。

Spring MVC是Spring的一個模塊,式一個web框架。通過Dispatcher Servlet, ModelAndView 和 View Resolver,開發(fā)web應用變得很容易。解決的問題領域是網(wǎng)站應用程序或者服務開發(fā)——URL路由、Session、模板引擎、靜態(tài)Web資源等等。

Spring Boot的功能

Spring Boot實現(xiàn)了自動配置,降低了項目搭建的復雜度。

眾所周知Spring框架需要進行大量的配置,Spring Boot引入自動配置的概念,讓項目設置變得很容易。Spring Boot本身并不提供Spring框架的核心特性以及擴展功能,只是用于快速、敏捷地開發(fā)新一代基于Spring框架的應用程序。

也就是說,它并不是用來替代Spring的解決方案,而是和Spring框架緊密結合用于提升Spring開發(fā)者體驗的工具。同時它集成了大量常用的第三方庫配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot應用中這些第三方庫幾乎可以零配置的開箱即用(out-of-the-box),大部分的Spring Boot應用都只需要非常少量的配置代碼,開發(fā)者能夠更加專注于業(yè)務邏輯。

Spring Boot只是承載者,輔助你簡化項目搭建過程的。如果承載的是WEB項目,使用Spring MVC作為MVC框架,那么工作流程和你上面描述的是完全一樣的,因為這部分工作是Spring MVC做的而不是Spring Boot。

對使用者來說,換用Spring Boot以后,項目初始化方法變了,配置文件變了,另外就是不需要單獨安裝Tomcat這類容器服務器了,maven打出jar包直接跑起來就是個網(wǎng)站,但你最核心的業(yè)務邏輯實現(xiàn)與業(yè)務流程實現(xiàn)沒有任何變化。

所以,用最簡練的語言概括就是:

  • Spring 是一個“引擎”;
  • Spring MVC 是基于Spring的一個 MVC 框架 ;
  • Spring Boot 是基于Spring4的條件注冊的一套快速開發(fā)整合包。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • MVC
    MVC
    +關注

    關注

    0

    文章

    73

    瀏覽量

    13831
  • Boot
    +關注

    關注

    0

    文章

    149

    瀏覽量

    35751
  • spring框架
    +關注

    關注

    0

    文章

    7

    瀏覽量

    2042
  • SpringBoot
    +關注

    關注

    0

    文章

    173

    瀏覽量

    161
收藏 人收藏

    評論

    相關推薦

    SpringBoot中的Druid介紹

    SpringBoot中Druid數(shù)據(jù)源配置
    發(fā)表于 05-07 09:21

    基于spring boot的linux服務器部署方法

    最近一直在研究springboot服務器,之前受到springmvc等框架的困擾,思路不對,一直想把springboot打包成war包然后部署到tomcat容器下,今天突然想到既然spring
    發(fā)表于 07-22 06:51

    SpringBoot知識總結

    SpringBoot干貨學習總結
    發(fā)表于 08-01 10:40

    springboot spring data jpa使用總結

    【本人禿頂程序員】springboot專輯:spring data jpa的使用
    發(fā)表于 04-15 11:38

    怎么學習SpringBoot

    SpringBoot學習之路(X5)- 整合JPA
    發(fā)表于 06-10 14:52

    SpringMvc框架簡介及執(zhí)行流程

    一、SpringMvc框架簡介1、Mvc設計理念MVC是一種軟件設計典范,用一種業(yè)務邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個組件里面,在改進和個性化定制界面及用戶交互的同時
    發(fā)表于 01-05 18:00

    怎樣去使用springboot

    怎樣去使用springboot呢?學習springboot需要懂得哪些?
    發(fā)表于 10-25 07:13

    SpringBoot應用啟動運行run方法

    什么時候創(chuàng)建嵌入式的Servlet容器工廠?什么時候獲取嵌入式的Servlet容器并啟動Tomcat;獲取嵌入式的Servlet容器工廠:1)、SpringBoot應用啟動運行run方法2
    發(fā)表于 12-20 06:16

    SpringMVC發(fā)送郵件

    1、SpringMVC實現(xiàn)發(fā)送郵件  今天來試著用SpringMVC發(fā)送郵件,主要需要依賴以下兩個包;  《!--spring發(fā)送郵件依賴spring.version=4.3.8.RELEASE--
    發(fā)表于 10-21 14:47

    Java springMVC

    springMVC基礎資料,為java初學者準備
    發(fā)表于 05-20 16:50 ?0次下載

    什么是 SpringBoot?

    本文從為什么要有 `SpringBoot`,以及 `SpringBoot` 到底方便在哪里開始入手,逐步分析了 `SpringBoot` 自動裝配的原理,最后手寫了一個簡單的 `start` 組件,通過實戰(zhàn)來體會了 `
    的頭像 發(fā)表于 04-07 11:28 ?1254次閱讀
    什么是 <b class='flag-5'>SpringBoot</b>?

    SpringBoot的核心注解1

    今天跟大家來探討下SpringBoot的核心注解@SpringBootApplication以及run方法,理解下springBoot為什么不需要XML,達到零配置
    的頭像 發(fā)表于 04-07 14:34 ?659次閱讀
    <b class='flag-5'>SpringBoot</b>的核心注解1

    SpringBoot的核心注解2

    今天跟大家來探討下SpringBoot的核心注解@SpringBootApplication以及run方法,理解下springBoot為什么不需要XML,達到零配置
    的頭像 發(fā)表于 04-07 14:34 ?1917次閱讀
    <b class='flag-5'>SpringBoot</b>的核心注解2

    springmvc常用5種注解

    SpringMVC是一種基于Java的Web框架,使用注解可以更加方便靈活地開發(fā)和管理控制器,實現(xiàn)請求的映射和處理。在SpringMVC中,有許多常用的注解,本文將詳細介紹其中的五種注解,并且詳細
    的頭像 發(fā)表于 11-22 16:51 ?773次閱讀

    springbootspringmvc區(qū)別

    Spring Boot和Spring MVC是兩個相關但又不同的概念。Spring MVC是Spring框架中用于構建Web應用程序的一部分,而Spring Boot是一個用于簡化Spring應用程序開發(fā)和部署的框架。 首先,讓我們來了解一下Spring MVC。Spring MVC是一個基于Java的Web框架,用于構建Web應用程序。它提供了一個模型-視圖-控制器(MVC)架構,以支持Web應用程序的開發(fā)。在Spring MVC中,模型代表數(shù)據(jù)和業(yè)務邏輯,視圖代表用戶界面,而控制器處理用戶請求并調度適當?shù)哪P秃鸵晥D。Spring MVC提供了一套
    的頭像 發(fā)表于 11-22 17:06 ?2207次閱讀