SpringBoot简介

官网:https://spring.io/projects/spring-boot

https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle

一、什么是SpringBoot

Spring Boot的设计目的是用来简化新Spring应用的初始搭建以及开发过程。

SpringBoot并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。即它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用,大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑。

目的:Spring Boot来简化Spring应用开发,约定优于配置, 去繁从简,just run就能创建一个独立的,产品级别的应用。

优点:

  • 快速创建独立运行的Spring项目以及与主流框架集成 —— 快速创建与集成
  • 使用嵌入式的Servlet容器,应用无需打成WAR包 —— 内嵌Servlet容器,无需打成WAR包
  • starters自动依赖与版本控制 —— 自动依赖与版本控制
  • 大量的自动配置,简化开发,也可修改默认值 —— 大量自动配置
  • 无需配置XML,无代码生成,开箱即用
  • 准生产环境的运行时应用监控
  • 与云计算的天然集成

二、Springboot 版本+ jdk 版本 + Maven 版本的兼容关系

SpringBoot2.0以下,使用JDK1.7

SpringBoot2.0及以上,使用JDK1.8及以上

后面的开发都以当前官网推荐的最新版本为基准:SpringBoot 2.1.8.RELEASE

备注:

  • Spring Boot –> J2EE一站式解决方案 
  • Spring Cloud –> 分布式整体解决方案

三、SpringBoot提供的功能

  • spring-boot:核心库,提供基础功能。(⭐️ ⭐️ ⭐️ ⭐️ ⭐️)
  • spring-boot-autoconfigure 和 spring-boot-starters:使用autoconfigure提供自动配置功能;使用Starter达到快速集成的目的。(⭐️ ⭐️ ⭐️ ⭐️ ⭐️)
  • spring-boot-actuator 和 spring-boot-actuator-autoconfigure:生产级的非功能性特性,一些监控、健康检查等功能。(⭐️ ⭐️ ⭐️ ⭐️ ⭐️)
  • spring-boot-test 和 spring-boot-test-autoconfigure:基于SpringBot的测试支持。(⭐️ ⭐️ ⭐️ ⭐️)
  • spring-boot-parent 和 spring-boot-dependencies:是所有其他module的父节点,使依赖版本在同一位置管理。(⭐️ ⭐️ ⭐️ ⭐️)
  • spring-boot-devtools:开发者工具集,包含自动重启、浏览器自动刷新、远程调试等功能。(⭐️ ⭐️ ⭐️)
  • spring-boot-tools:maven/gradle插件、可执行jar等功能。(⭐️ ⭐️ ⭐️)
  • spring-boot-cli:提供一套命令行工具。(⭐️ ⭐️)
  • spring-boot-properties-migrator:帮助开发者从低版本升级到Spring Boot 2.0。(⭐️)
  • spring-boot-docs:指定java doc的内容及样式。(⭐️)

四、Spring Boot与Spring其它project的对比

1. Spring Boot vs Spring Cloud

Spring Cloud是一个基于Spring Boot实现的一系列框架的有序集合,是一个关注全局的服务治理框架。

Spring Boot可以离开Spring Cloud独立使用开发项目,但是Spring Cloud离不开Spring Boot,属于依赖的关系。

SpringCloud的官网截图如下:

2. Spring Boot vs Spring Framework

Spring Framework是一个轻量级、非侵入式、一站式、模块化的开发应用框架。Spring Boot基于Spring Framework开发,不能单独存在。

3. Spring Boot vs Spring MVC

Spring MVC是Spring Framework中处理web请求的一个模块,是Spring Framework的一部分。层级是这样的:

Spring MVC >> Spring Framework >> Spring Boot

原文地址:https://www.cnblogs.com/myitnews/p/12326265.html