Starter是SpringBoot的四大核心功能特性之一,除此之外,SpringBoot還有自動裝配,Actuator監控等特性 SpringBoot裡面的這些特性,都是為了讓開發者在開發基於Spring生態下的企業級應用時,只需要關係業務邏輯,減少對配置和外部環境的依賴 ...
Starter是SpringBoot的四大核心功能特性之一,除此之外,SpringBoot還有自動裝配,Actuator監控等特性
SpringBoot裡面的這些特性,都是為了讓開發者在開發基於Spring生態下的企業級應用時,只需要關係業務邏輯,減少對配置和外部環境的依賴
Starter是啟動依賴,它的主要作用有幾個:
1.Starter組件以功能為緯度,來維護對於的Jar包的版本依賴,使得開發者可以不需要去關係這些版本衝突這種容易出錯的細節。
2.Starter組件會把對應功能的所有jar包依賴全部導入進來,避免了開發者自己去引入依賴帶來的麻煩
3.Starter內部集成了自動裝配的機制,也就說在程式中依賴對應的Starter組件以後,這個組件會自動集成到Spring生態下,並且對於相關Bean管理,也是基於自動裝配機制來完成。
4.依賴Starter組件後,這個組件對於的功能所需要維護的外部化配置,會自動集成到SpringBoot裡面
我們只需要在applciation.yml文件里進行維護就行了,比如Mybatis這個starter,只需要在application.yml文件裡面添加Mybatis配置信息就可以直接使用了
SpringBoot官方提供了很多的Starter組件,比如Redis、Mybatis、MongoDB等等
但是官方並不一定維護了所有中間件的Starter,所以對於不存在的Starter,第三方組件一般會自己去維護一個(如圖) 官方starter和第三方的starter組件,最大的區別在於命名上,這也是一種約定優於配置的體現。
① 官方維護的starter的以spring-boot-starter開頭的首碼
② 第三方維護的Starter是以Spring-boot-starter結尾的尾碼