SpringBoot
Spring?是一個“引擎”;
Spring MVC?是基于Spring的一個?MVC?框架;
Spring Boot?是基于Spring4的條件注冊的一套快速開發(fā)整合包。
spring boot只是一個配置工具,整合工具,輔助工具。
Spring?框架就像一個家族,有眾多衍生產(chǎn)品例如?boot、security、jpa等等。但他們的基礎(chǔ)都是Spring?的ioc和?aop,ioc?提供了依賴注入的容器,?aop解決了面向橫切面的編程,然后在此兩者的基礎(chǔ)上實現(xiàn)了其他延伸產(chǎn)品的高級功能。SpringBoot與SpringMVC的區(qū)別
Spring MVC提供了一種輕度耦合的方式來開發(fā)web應(yīng)用。它是Spring的一個模塊,是一個web框架。通過Dispatcher Servlet, ModelAndView?和?View Resolver,開發(fā)web應(yīng)用變得很容易。解決的問題領(lǐng)域是網(wǎng)站應(yīng)用程序或者服務(wù)開發(fā)——URL路由、Session、模板引擎、靜態(tài)Web資源等等。
Spring Boot實現(xiàn)了自動配置,降低了項目搭建的復(fù)雜度。它主要是為了解決使用Spring框架需要進(jìn)行大量的配置太麻煩的問題,所以它并不是用來替代Spring的解決方案,而是和Spring框架緊密結(jié)合用于提升Spring開發(fā)者體驗的工具。同時它集成了大量常用的第三方庫配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot應(yīng)用中這些第三方庫幾乎可以零配置的開箱即用(out-of-the-box)。
Spring Boot只是承載者,輔助你簡化項目搭建過程的。如果承載的是WEB項目,使用Spring MVC作為MVC框架,那么工作流程和你上面描述的是完全一樣的,因為這部分工作是Spring MVC做的而不是Spring Boot。
對使用者來說,換用Spring Boot以后,項目初始化方法變了,配置文件變了,另外就是不需要單獨安裝Tomcat這類容器服務(wù)器了,maven打出jar包直接跑起來就是個網(wǎng)站,但你最核心的業(yè)務(wù)邏輯實現(xiàn)與業(yè)務(wù)流程實現(xiàn)沒有任何變化。
為什么配置簡單?
首先,了解它是何如加載配置文件的。先說結(jié)論:springboot加載配置文件是通過listener監(jiān)聽器實現(xiàn)的。


在容器啟動完成后會廣播一個SpringApplicationEvent事件,而SpringApplicationEvent事件是繼承自ApplicationEvent事件的,代碼如下:(下面還有一堆,有興趣請深入了解點擊查看詳細(xì),感謝這位老哥的分享)最終讀到了aplication.properties這個文件
ps:文件類型默認(rèn)的有四種:properties、xml、yml、yaml


通過設(shè)置spring.profiles.active加載對應(yīng)的配置文件 aplication-dev.properties

配置文件包括了:數(shù)據(jù)庫鏈接、
mybatis:掃描mapper.xml

redis、AMQ

分頁、上傳、日志


綜上,僅靠這個配置文件就完成了SpringBoot的配置
如果項目采用Maven,則還需要配置pom.xml

要在springboot中使用springmvc,只需要引入spring-boot-starter-web即可(前提是項目的pom文件是繼承自spring-boot-starter-parent)SpringMVC的配置

項目的依賴下包均靠Maven來管理