spring和spring boot具体什么区别

springboot是spring框架的扩展 , 它消除了设置spring应用程序所需的xml配置,为更快,更高效的开发生态系统铺平了道路 。
Spring简介
Spring是一个分层的 full-stack(一站式)轻量级框架 , 以Ioc(Inversion of Control , 控制反转)和AOP(Aspect Oriented Programming,面向切片编程)为内核 , 使用简单的JavaBean来完成以前只能由EJB(Enterprise Java Beans)完成的工作,取代了臃肿、低效的EJB 。
Spring致力于JavaEE应用各层的解决方案,是企业应用一站式开发很好的选择,在表现层它提供了Spring MVC以及整合Struts的功能,在业务逻辑层可以管理事务、记录日志等,在持久层可以整合Hibernate、Mybatis等框架 。虽然Spring贯穿表现层、业务逻辑层、持久层 , 但Spring并不是要取代那些已有的优秀框架,而是可以高度开放的与其它优秀框架无缝整合 。
Spring的优点

  • 非侵入式设计,Spring是一种非侵入式(no-invasive)框架,它可以使应用程序代码对框架的依赖最小化 。
  • 方便解耦、简化开发 , Spring是一个大工厂,可以将所有 对象的创建、依赖关系的维护 交给Spring容器管理,大大降低了组建之间的耦合 。
  • 支持AOP,允许将一些通用任务,比如安全、事务、日志等,进行集中式管理 , 从而提高程序的复用性 。
  • 支持声明式事务处理 , 通过配置就可以完成对事务的管理 , 无需手动编程 。
  • 方便整合其它优秀框架,Spring可以与大多数框架无缝整合 。
  • 测试方便,Spring支持Junit4,可通过注解测试程序,很方便 。
  • 降低了使用JavaEE API的难度 , Spring对JavaEE开发中难用的一些API进行了封装,降低了这些API的使用难度 。
Springboot简介
Springboot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用初始搭建以及开发过程 。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置 。Spring Boot其实就是一个整合很多可插拔的组件(框架),内嵌了使用工具(比如内嵌了Tomcat、Jetty等),方便开发人员快速搭建和开发的一个框架 。
简单来说就是:简化开发、整合框架、减少配置、快速搭建 。
SpringBoot特点
  • 快速搭建:搭建项目快,几秒钟就可以搭建完成;
  • 方便测试:内置了JUnit、Spring Boot Test等多种测试框架;
  • 内嵌容器:内嵌了Tomcat、Jetty等 , 省去了配置Tomcat的繁琐;
  • 方便监控:Spring Boot Actuator组件提供了应用的系统监控,可以查看应用配置详细信息;
  • 减少配置:基于注解的零配置思想;
  • 整合框架:各种流行框架,springmvc , mybatis,spring cloud无缝整合;
Spring和Springboot的关系
Springboot包含了Spring的核心特性 , 它剥离了Spring中许多“企业特性”,而提供了一个基于Java的、面向REST的微服务框架 。只需一些简单的注解 , Java开发者就能够快速构建一个可打包和部署的REST微服务,这个微服务并不需要外部的应用容器 。

正春华枝俏,待秋实果茂,与君共勉 。

Spring 为开发 Java 程序提供了全面的基础架构支持,包括依赖注入以及一些开箱即用的模块,大大缩短了程序的开发时间 。
Spring JDBC 、 Spring MVC 、 Spring AOP 、 Spring TEST 、 Spring Security 、 Spring ORM
SpringBoot 是一个轻量级的微服务器,相比 Spring ,它消除了 xml 的配置 , 嵌入了 Tomcat 、 Jetty Undertow。尽可能自动的配置Spring 应用 。
一、Spring 的介绍
简而言之,Spring 框架为开发 Java 应用程序提供了全面的基础架构支持 。它包含一些很好的功能 , 如依赖注入和开箱即用的模块,如:
Spring JDBC
Spring MVC
Spring Security
Spring AOP
Spring ORM
Spring Test
这些模块可以大大缩短应用程序的开发时间 。例如,在 Java Web 开发的早期阶段,我们需要编写大量的重复代码来将记录插入到数据源中 。但是通过使用 Spring JDBC 模块的 JDBCTemplate  , 我们可以将它简化为只需几个简单配置或者几行代码 。
二、SpringBoot 的介绍
Spring Boot 基本上是 Spring 框架的扩展,它消除了设置 Spring 应用程序所需的复杂例行配置 。
它的目标和 Spring 的目标是一致的,为更快,更高效的开发生态系统铺平了道路 。以下是 Spring Boot 中的一些功能:
通过starter 这一个依赖,以简化构建和复杂的应用程序配置 。
可以直接main 函数启动,嵌入式 web 服务器,避免了应用程序部署的复杂性 ,  Metrics 度量,Helth check 健康检查和外部化配置 。
【spring和spring boot具体什么区别】
尽可能的自动化配置Spring 功能 。

经验总结扩展阅读