堅持學習Java100天第008天 Maven和SpringBoot

為什麼使用Maven

獲取jar包。使用Maven之前,自行在網路中下載jar包,效率較低。如【谷歌、百度、CSDN。。。。】

,使用Maven之後,統一在一個地址下載資源jar包【阿里雲映象伺服器等。。。】。

新增jar包。使用Maven之前,將jar複製到專案工程中,jar包新增到專案中,相對浪費儲存空間。使用Maven之後,jar包統一儲存Maven本地倉庫,使用座標方式將jar包從倉庫引入到專案中。

什麼是Maven

Maven字面意:專家、內行。Maven是一款自動化構建工具,專注服務於Java平臺的專案構建和依賴管理。依賴管理指的是jar之間的依賴關係,jar包管理問題統稱為依賴管理。專案構建不等同於專案建立。專案構建是一個過程【7步驟組成】,清理mvn clean,編譯mvn compile,測試mvn test,報告,打包mvn package,安裝mvn install,部署。

安裝Maven

Maven底層使用Java語言編寫的,所有需要配置JAVA_HOME環境變數及Path。將Maven解壓非中文無空格目錄下。配置MAVEN_HOM環境變數及Path。輸入cmd,進入命令列視窗,輸入mvn -v,檢查Maven環境是否搭建成功。

配置Maven

Maven配置檔案位置:maven根目錄/conf/settings。xml

設定本地倉庫【預設:C:/使用者家目錄/。m2/repository】

設定阿里雲映象伺服器

設定使用JDK版本

IDEA整合Maven

堅持學習Java100天第008天 Maven和SpringBoot

IDEA建立Maven專案

堅持學習Java100天第008天 Maven和SpringBoot

之後要填寫專案名稱,包名等資訊。

堅持學習Java100天第008天 Maven和SpringBoot

得到一個基本的Maven目錄結構:

堅持學習Java100天第008天 Maven和SpringBoot

Maven引入JUnit單元測試

第一步:修改pom。xml,引入junit4的座標

第二步:建立一個Hello的類,用於測試

第三步:建立TestHello測試類,編寫測試程式碼

得到的目錄結構如下:

堅持學習Java100天第008天 Maven和SpringBoot

第四步:執行Maven測試

堅持學習Java100天第008天 Maven和SpringBoot

檢視測試結果:

有了前面的基礎以後,咱們就可以開始學框架,做專案了。我推薦最先學習的是SpringBoot框架,這個是目前使用最廣泛的框架。

IDEA建立SpringBoot專案

第一步:建立Spring Initializer

堅持學習Java100天第008天 Maven和SpringBoot

第二步:勾選需要的依賴

堅持學習Java100天第008天 Maven和SpringBoot

第三步:在resources目錄下建立banner。txt

第四步:使用Maven啟動專案

堅持學習Java100天第008天 Maven和SpringBoot

新增控制器

這個示例主要講解一下幾個註解的使用。@RestController是將類註解為REST風格的API介面類。@RequestMapping是定義介面的路徑。

示例程式碼:

重啟服務以後訪問:http://localhost:8080/hello

堅持學習Java100天第008天 Maven和SpringBoot

List和Map集合

為了便於結合實戰,本套教程跳過了集合的部分。這裡為了方便演示JSON資料的返回,講解一下List集合和Map集合的基本用法。

主要還是以程式碼為主,請看後面的示例程式碼。

咱們的需求是生成100個學生的資訊,然後用List儲存,List裡面是學生,每個學生用Map表示。主要包括姓名,年齡和性別。

核心程式碼:

完整示例程式碼:

修改HelloController以後,重啟服務,然後訪問:http://localhost:8080/students

堅持學習Java100天第008天 Maven和SpringBoot

隨機資料工具類

為了便於生成模擬資料,我們建立一個隨機資料工具類,用於輔助生成各種隨機資料資訊。這裡有個知識點是所有的方法都用static修飾,用static修飾的方法叫做靜態方法,靜態方法可以直接透過類名呼叫。工具類中,一般都是靜態方法。

示例程式碼:

配置和測試

建立一個SpringBoot專案ApplicationPractice03,程式碼結構如下:

堅持學習Java100天第008天 Maven和SpringBoot

參考如下pom。xml新增相關的依賴:

實現上個案例中的自定義banner,然後新增三個配置檔案:application。yml,application-pro。yml,application-dev。yml。其中application。yml是入口配置,會首先讀取該配置。application-dev。yml是開發環境的配置,application-pro。yml是生產環境的配置。

修改application。yml,如下:

修改application-dev。yml,如下:

編寫測試類:test/com。zhangdapeng520。ApplicationPractice03ApplicationTests。java

使用Maven打包,先clean,然後install。

最後執行測試,得到如下測試結果:

堅持學習Java100天第008天 Maven和SpringBoot

使用Thymeleaf模板

建立SpringBoot專案,整體目錄結構如下:

堅持學習Java100天第008天 Maven和SpringBoot

按照之前的示例,進行banner的配置和多環境的配置,在application-dev。yml中新增thymeleaf模板的配置。

在pom。xml中引入相關的依賴:

新增模板:templates/z01hello。html

之後重啟服務,訪問:http://localhost:8888/01

堅持學習Java100天第008天 Maven和SpringBoot

WebFlux響應式程式設計入門

建立SpringBoot專案

堅持學習Java100天第008天 Maven和SpringBoot

勾選依賴,特別是要注意勾選Spring Reactive Web

堅持學習Java100天第008天 Maven和SpringBoot

啟動服務,訪問:http://localhost:8080/hello

堅持學習Java100天第008天 Maven和SpringBoot

WebFlux實現增刪改查介面

新建專案:

堅持學習Java100天第008天 Maven和SpringBoot

勾選依賴:

堅持學習Java100天第008天 Maven和SpringBoot

目錄結構如下:

堅持學習Java100天第008天 Maven和SpringBoot

啟動服務,訪問:http://localhost:8888/user/list

堅持學習Java100天第008天 Maven和SpringBoot

獲取單個使用者的介面:

建立使用者的介面:

修改使用者的介面:

刪除使用者的介面:

完整程式碼:

重啟服務,使用Postman或者API Fox進行訪問測試。

堅持學習Java100天第008天 Maven和SpringBoot

TAG: Mavenjarapplicationyml建立