spring boot就是一个大框架里面包含了许许多多的东西,其中spring就是最核心的内容之一,固然就包含spring mvc。web
spring mvc 是只是spring 处理web层请求的一个模块。spring
所以他们的关系大概就是这样:编程
spring mvc < spring <springboot。
spring boot 我理解就是把 spring spring mvc spring data jpa 等等的一些经常使用的经常使用的基础框架组合起来,提供默认的配置,而后提供可插拔的设计,就是各类 starter ,来方便开发者使用这一系列的技术,套用官方的一句话, spring 家族发展到今天,已经很庞大了,做为一个开发者,若是想要使用 spring 家族一系列的技术,须要一个一个的搞配置,而后还有个版本兼容性问题,其实挺麻烦的,偶尔也会有小坑出现,其实蛮影响开发进度, spring boot 就是来解决这个问题,提供了一个解决方案吧,能够先不关心如何配置,能够快速的启动开发,进行业务逻辑编写,各类须要的技术,加入 starter 就配置好了,直接使用,能够说追求开箱即用的效果吧.springboot
spring 框架有超多的延伸产品例如 boot security jpa etc... 但它的基础就是 spring 的 ioc 和 aop ioc 提供了依赖注入的容器 aop 解决了面向横切面的编程 而后在此二者的基础上实现了其余延伸产品的高级功能 Spring MVC 呢是基于 Servlet 的一个 MVC 框架 主要解决 WEB 开发的问题 由于 Spring 的配置太复杂了 各类 XML JavaConfig hin 麻烦 因而懒人改变世界推出了 Spring boot 约定优于配置 简化了 spring 的配置流程.mvc
Spring 最初利用“工厂模式”( DI )和“代理模式”( AOP )解耦应用组件。你们以为挺好用,因而按照这种模式搞了一个 MVC 框架(一些用 Spring 解耦的组件),用开发 web 应用( SpringMVC )。而后有发现每次开发都要搞不少依赖,写不少样板代码很麻烦,因而搞了一些懒人整合包( starter ),这套就是 Spring Boot 。框架