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ò)DispatcherServlet, 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)了auto-configuration自動(dòng)配置(另外三大神器actuator監(jiān)控缨伊,cli命令行接口,starter依賴)进宝,降低了項(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)未玻。
所以灾而,用最簡(jiǎn)練的語(yǔ)言概括就是:
Spring 是一個(gè)“引擎”;
Spring MVC 是基于Spring的一個(gè) MVC 框架;
Spring Boot 是基于Spring4的條件注冊(cè)的一套快速開(kāi)發(fā)整合包。