Spring Boot 是一個用于快速開發基于 Spring 框架的應用程序的工具。它具有許多特性,其中一些重要的特性包括:
1. 自動配置:Spring Boot 提供了自動配置的機制,可以根據應用程序的依賴和環境自動配置應用程序的各種組件,大大簡化了開發過程。
2. 簡化的依賴管理:Spring Boot 通過提供一組父項目和Starter模塊,簡化了依賴管理,開發者只需要添加相應的 Starter 模塊就能夠引入所需的依賴。
3. 內嵌式容器:Spring Boot 提供了內嵌式的容器,如 Tomcat、Jetty 等,使得應用程序可以獨立運行,無需部署到外部容器中。
4. 生產就緒:Spring Boot 提供了各種生產環境準備的功能,如性能監控、健康檢查、配置管理等,可以方便地打包部署到生產環境中。
5. 簡化的配置:Spring Boot 采用約定大于配置的思想,提供了許多默認值和自動配置,減少了配置文件的編寫量。
6. 微服務支持:Spring Boot 能夠輕松集成 Spring Cloud 微服務框架,支持微服務架構的開發。
總的來說,Spring Boot 提供了一種快速、簡便的方式來開發基于 Spring 框架的應用程序,使得開發者可以更專注于業務邏輯的實現,而不必過多關注配置和環境搭建等問題。
而起步依賴本質上就是一個Maven坐標,整合了完成一個功能需要的所有坐標
?因為Maven具有傳遞依賴的特性
?一、下載Maven
maven安裝之前要先安裝jdk,請確保你的系統已經安裝了jdk環境(我用的是JDK17,因為SpringBoot3只支持17以上的版本)
?Maven官網:Download Apache Maven – Maven
二、配置
1.下載好的maven壓縮包解壓到一個沒有中文,空格或其他特殊字符的文件夾
2.配置環境變量
3. 驗證安裝是否成功,win+R運行cmd,輸入mvn -v,如圖所示則配置成功
4. 配置settings文件
在Maven安裝目錄conf目錄下找到settings.xml配置文件
修改本地倉庫地址
(1)在maven安裝目錄下新建本地倉庫文件夾maven_repository
(2)修改默認本地倉庫地址
(3)配置私服,因為中央倉庫在國外導致下載jar包很慢或者失敗,所以我們改為國內的服務器
<mirror><id>nexus-tencentyun</id><mirrorOf>*</mirrorOf><name>Nexus tencentyun</name><url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>
</mirror>
(4)配置jdk,也要夾在兩個profiles標簽之間
5.配置完成。win+r 運行cmd,輸入mvn help:system測試,Maven會自動下載缺省的或者更新的各種配置文件和依賴到本地倉庫中,如果出現build success,說明你的maven已經配置成功了。
6.配置IDEA
三、Maven原理(管理和構建Java項目的工具)
?作用:
1.方便快捷的依賴管理(jar包)
????????
2.項目構建(快速完成項目的編譯、測試、打包、發布)
3.統一項目結構(使用Maven構建出來的項目,無論使用什么開發工具創建出來的Maven目,在使用其他開發工具的時候都可以直接導入)
倉庫(本地倉庫、中央倉庫、私服倉庫):用于存儲和管理jar包
Maven坐標:
什么是坐標?
Maven 中的坐標是資源( jar)的唯一標識,通過該坐標可以唯一定位資源位置
使用坐標來定義項目或引入項目中需要的依賴
Maven 坐標主要組成?
groupId:定義當前Maven項目隸屬組織名稱(通常是域名反寫,例如:com.itheima)
artifactId:定義當前Maven項目名稱(通常是模塊名稱,例如 order-service、goods-service)
version:定義當前項目版本號
SNAPSHOT:功能不穩定、尚處于開發中的版本,即快照版本
RELEASE:功能趨于穩定、當前更新停止,可以用于發行的版本?
導入Maven項目
方式一:
方式二:
依賴配置
官網(https://mvnrepository.com/)
依賴:
指當前項目運行所需要的jar包,一個項目中可以引入多個依賴。
配置:
1.在 pom.xml 中編寫 <dependencies> 標簽
2.在<dependencies>標簽中 使用<dependency> 引入坐標
3.定義坐標的 groupId,artifactId,version
4.點擊刷新按鈕,引入最新加入的坐標
Maven生命周期?
Maven的生命周期就是為了對所有的maven項目構建過程進行抽象和統一
Maven中有3套相互獨立的生命周期:
clean:清理工作
default:核心工作,如:編譯、測試、打包、安裝、部署等
site:生成報告、發布站點等。
生命周期階段
clean:移除上一次構建生成的文件
compile:編譯項目源代碼
test:使用合適的單元測試框架運行測試(junit)
package:將編譯后的文件打包,如:jar、war等
install:安裝項目到本地倉庫?
注意 : 在同一套生命周期中,當運行后面的階段時,前面的階段都會運行?