springboot和springmvc的差別是springboot只是一個設定工具,整合工具,輔助工具,springmvc是框架,專案中實際運行的程式碼。
spring boot只是一個配置工具,整合工具,輔助工具.
springmvc是框架,專案中實際運行的程式碼
Spring 框架就像一個家族,有眾多衍生產品例如 boot、security、jpa等等。但他們的基礎都是Spring 的ioc和 aop,ioc 提供了依賴注入的容器, aop解決了面向橫截面的編程,然後在此兩者的基礎上實現了其他延伸產品的高級功能。
Spring MVC提供了一種輕度耦合的方式來開發web應用。它是Spring的一個模組,是一個web框架。透過Dispatcher Servlet, ModelAndView 和 View Resolver,開發web應用變得很容易。解決的問題領域是網站應用程式或服務開發——URL路由、Session、模板引擎、靜態Web資源等等。
Spring Boot實現了自動配置,降低了專案建置的複雜度。它主要是為了解決使用Spring框架需要進行大量的配置太麻煩的問題,所以它並不是用來替代Spring的解決方案,而是和Spring框架緊密結合用於提升Spring開發者體驗的工具。同時它整合了大量常用的第三方函式庫配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot應用中這些第三方函式庫幾乎可以零配置的開箱即用(out-of-the- box)。
Spring Boot只是承載者,輔助你簡化專案建立過程的。如果承載的是WEB項目,使用Spring MVC作為MVC框架,那麼工作流程和你上面描述的是完全一樣的,因為這部分工作是Spring MVC做的而不是Spring Boot。
對使用者來說,換用Spring Boot以後,專案初始化方法變了,設定檔變了,另外就是不需要單獨安裝Tomcat這類容器伺服器了,maven打出jar包直接跑起來就是個網站,但你最核心的業務邏輯實作與業務流程實現沒有任何改變。
總結:Spring 最初利用「工廠模式」(DI)和「代理模式」(AOP)解耦應用元件。大家覺得還挺好用,於是按照這個模式搞了一個 MVC框架(一些用Spring 解耦的組件),用開發 web 應用( SpringMVC )。然後發現每次開發都寫很多樣化板程式碼,為了簡化工作流程,於是開發出了一些「懶人整合包」(starter),這套就是 Spring Boot。
所以,用最簡練的語言概括就是:
Spring 是一個「引擎」;
Spring MVC 是基於Spring的一個 MVC 框架;
Spring Boot 是基於Spring4的條件註冊的一套快速開發整合包。
推薦教學: 《java教學》
#以上是springboot和springmvc區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!