Spring Boot 回顾(九):什么是Spring Boot?

234 阅读3分钟

这是我参与8月更文挑战的第9天,活动详情查看:8月更文挑战

前言

至此,经过一系列的更文,从简单的自定义注解到实现自己的starter,从简单地run方法到深入其启动原理,我们围绕Spring Boot已经由浅及深做了方方面面的介绍,限于篇幅,Spring Boot相关的更文准备收尾了,虽然还有不少Spring Boot的一些特性没能介绍完,但对于这个框架也应该认识更加深刻。那么请问,到底什么是Spring Boot呢?

发展历程

  • 在开始了解Spring Boot之前,我们需要先了解一下Spring。可以肯定,Spring Boot的诞生离不开Spring的发展。在诞生之初,Spring就是为了简化替代日益重量级的企业级Java技术。但随着时间的推移,JavaEE自身也在不断的演化,面向简单JavaBean模型、依赖注入、面向切面也都逐渐融入,这无疑是受到了Spring成功的启发。
  • 在被模仿的同时,Spring并没有停下脚步。它继续在其它领域不断发展:移动开发,社交API集成、安全管理、NoSQL数据库、云计算和大数据等等都是它正在涉足和创新的领域,其前景更加广阔,甚至已经形成与传统的JavaEE平台分庭抗礼之势。
  • 但是随着Spring发展的越来越火,Spring也慢慢从一个小而精的框架变成了,一个覆盖面广大而全的框架,另一方面随着新技术的发展,让Spring逐渐看着笨重起来,大量繁琐的XML配置和第三方整合配置,让Spring使用者痛苦不已,这个时候急需一个解决方案,来解决这些问题。
  • 就在这个节骨眼上Spring Boot应运而生,2013年Spring Boot开始研发,2014年4月Spring Boot 1.0正式发布,Spring Boot诞生之初就受到业界的广泛关注,很多个人和企业陆续开始尝试,随着Spring Boot 2.0的发布,又一次把Spring Boot推向了公众的视野,也有越来越多了的中大型企业把Spring Boot使用到正式的生产环境了。

Spring Boot项目结构

我们再来看下Spring Boot项目的目录结构。

image.png 可以将Spring Boot项目大致分为3部分,第一部分就是java目录下的代码,第二部分是resources目录下的资源文件,其中包括我们最重要的application.yml配置。通过这个文件,真正让我们告别在spring中铺天盖地的各种配置。第三部分就是我们的pom.xml文件,这里我们整个需要的所有依赖。其中我们的pom文件都会有这样一段代码,表明该项目是基于spring boot构建的。

<modelVersion>4.0.0</modelVersion>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.2</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

总结

我们再来看看Spring Boot框架的名字。Spring当然指的是Spring 框架,boot,意思是启动,所以,spring boot其实就是一个启动spring项目的一个工具而已。从最根本上来讲,Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。与此同时,Spring Boot给我们带来了极大的便利,它让我们的开发、测试、配置和监控变得更加简单,