如何理解SpringBoot的Starter

Starter是SpringBoot的四大核心功能特性之一,除此之外,SpringBoot还有自动装配,Actuator监控等特性

SpringBoot里面的这些特性,都是为了让开发者在开发基于Spring生态下的企业级应用时,只需要关系业务逻辑,减少对配置和外部环境的依赖

Starter是启动依赖,它的主要作用有几个:
1.Starter组件以功能为纬度,来维护对于的Jar包的版本依赖,使得开发者可以不需要去关系这些版本冲突这种容易出错的细节。

2.Starter组件会把对应功能的所有jar包依赖全部导入进来,避免了开发者自己去引入依赖带来的麻烦
image

3.Starter内部集成了自动装配的机制,也就说在程序中依赖对应的Starter组件以后,这个组件会自动集成到Spring生态下,并且对于相关Bean管理,也是基于自动装配机制来完成。
image

4.依赖Starter组件后,这个组件对于的功能所需要维护的外部化配置,会自动集成到SpringBoot里面

我们只需要在applciation.yml文件里进行维护就行了,比如Mybatis这个starter,只需要在application.yml文件里面添加Mybatis配置信息就可以直接使用了
image

SpringBoot官方提供了很多的Starter组件,比如Redis、Mybatis、MongoDB等等

但是官方并不一定维护了所有中间件的Starter,所以对于不存在的Starter,第三方组件一般会自己去维护一个(如图) 官方starter和第三方的starter组件,最大的区别在于命名上,这也是一种约定优于配置的体现。
① 官方维护的starter的以spring-boot-starter开头的前缀
image

② 第三方维护的Starter是以Spring-boot-starter结尾的后缀
image

posted @ 2023-09-06 23:53  CodeYHY  阅读(255)  评论(0编辑  收藏  举报