溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

springboot與springmvc的區(qū)別是什么

發(fā)布時(shí)間:2020-07-01 16:10:50 來(lái)源:億速云 閱讀:165 作者:元一 欄目:編程語(yǔ)言

本篇文章給大家分享的是有關(guān)springboot與springmvc的區(qū)別,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

Spring Boot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。該框架使用了特定的方式來(lái)進(jìn)行配置,從而使開(kāi)發(fā)人員不再需要定義樣板化的配置。通過(guò)這種方式,Spring Boot致力于在蓬勃發(fā)展的快速應(yīng)用開(kāi)發(fā)領(lǐng)域(rapid application development)成為領(lǐng)導(dǎo)者。

Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),可以選擇是使用內(nèi)置的 Spring Web 框架還可以是 Struts 這樣的 Web 框架。

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

Spring MVC提供了一種輕度耦合的方式來(lái)開(kāi)發(fā)web應(yīng)用。它是Spring的一個(gè)模塊,是一個(gè)web框架。通過(guò)Dispatcher Servlet, ModelAndView 和 View Resolver,開(kāi)發(fā)web應(yīng)用變得很容易。解決的問(wèn)題領(lǐng)域是網(wǎng)站應(yīng)用程序或者服務(wù)開(kāi)發(fā)——URL路由、Session、模板引擎、靜態(tài)Web資源等等。

Spring Boot實(shí)現(xiàn)了自動(dòng)配置,降低了項(xiàng)目搭建的復(fù)雜度。它主要是為了解決使用Spring框架需要進(jìn)行大量的配置太麻煩的問(wèn)題,所以它并不是用來(lái)替代Spring的解決方案,而是和Spring框架緊密結(jié)合用于提升Spring開(kāi)發(fā)者體驗(yàn)的工具。同時(shí)它集成了大量常用的第三方庫(kù)配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot應(yīng)用中這些第三方庫(kù)幾乎可以零配置的開(kāi)箱即用(out-of-the-box)。

Spring Boot只是承載者,輔助你簡(jiǎn)化項(xiàng)目搭建過(guò)程的。如果承載的是WEB項(xiàng)目,使用Spring MVC作為MVC框架,那么工作流程和你上面描述的是完全一樣的,因?yàn)檫@部分工作是Spring MVC做的而不是Spring Boot。

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

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

所以,用最簡(jiǎn)練的語(yǔ)言概括就是:

Spring 是一個(gè)“引擎”;

Spring MVC 是基于Spring的一個(gè) MVC 框架;

Spring Boot 是基于Spring4的條件注冊(cè)的一套快速開(kāi)發(fā)整合包。以上就是springboot與springmvc的區(qū)別,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI