spring cloud Alibaba 之 spring boot 基礎學習筆記

lzf2284466發表於2020-10-12

1、SpringBoot是什麼?能做什麼?

(1)定義:快速開發的腳手架
(2)作用:快速建立獨立的、生產級的基於spring的應用程式,即基於spring,提升效率的框架,讓編碼更加簡單、讓配置管理更加簡單、讓部署更加簡單
(3)特性:無需部署war檔案;提供starter簡化配置;儘可能自動配置spring以及第三方庫;提供“生產就緒”功能,例如指標、健康檢查、外部配置等;無程式碼生產&無XML

2、SpringBoot必知必會

(1)快速建立應用

需求:整合spring MVC;/test 路徑(端點);使用spring initializr快速建立spring boot應用

在這裡插入圖片描述
在這裡插入圖片描述
① maven、gradle,java圈子中最常見的構建工具,可以用來管理jar包版本、下載jar包、編譯、打包等
② group:團隊的唯一標識
③ artifact:專案的唯一標識
④ packaging:專案打包方式,spring boot 推薦jar包
⑤ version:專案版本
⑥ name:專案名稱
⑦ package:專案的包規劃

在這裡插入圖片描述
① 可選擇spring boot版本,帶有字尾的(如snapshot等)都不是正式版本
② 由於需要整合spring MVC,需選擇Web(spring Web)

PS one:start.spring.io,線上版的spring initializr

在這裡插入圖片描述
① 下載壓縮包,解壓即可使用
② IDE未整合spring initializr,即可快速建立應用

PS two:custom,如公司不能上外網訪問start.spring.io,自己部署一個spring initializr,把地址填寫到對應位置

在這裡插入圖片描述
建立/test端點,clean install 防止jar未下載完整、應用各種報錯,確保構建成功再啟動

在這裡插入圖片描述
進入target目錄,輸入命令即可部署

PS three:對比傳統web開發方式,有一大堆配置檔案,xml檔案、application.xml等;部署需要打成war包,放到tomcat伺服器

(2)應用組成分析

  • 依賴:pom.xml
    在這裡插入圖片描述
  • 啟動類:註解
    在這裡插入圖片描述
  • 配置:application.properties
    在這裡插入圖片描述
  • static目錄:存放靜態檔案,js、css、html、圖片
  • templates:存放模板檔案,存放jsp等,支援freemarker、groovy、thymeleaf、mustache等模板引擎(由於應用趨向前後端分離,模板引擎用得越來越少)

(3)開發三板斧

  • 加依賴,SpringBoot官方提供格式:spring-boot-starter-xxx(spring-boot-starter-data-jpa) ,非官方提供:xxx-spring-boot-starter(mybatis-spring-boot-starter)
  • 寫註解
  • 寫配置

(4)Spring Boot Actuator:為應用提供強大的監控能力

  • 整合,加依賴
    在這裡插入圖片描述
  • /actuator 導航端點,可以展示spring boot actrator的所有端點在這裡插入圖片描述
    ① /health:健康檢查,檢查應用的資源,需新增以下配置

在這裡插入圖片描述
在這裡插入圖片描述
② /info:展示描述資訊,新增配置

在這裡插入圖片描述
③ 啟用所有端點:新增以下配置

在這裡插入圖片描述

(5)配置管理

  • 支援的配置格式:application.properties、application.yml(json子集)、application.yaml

  • 區別:99%基本相同

    PS:推薦yml,可讀性更高;在極度情況下若要順序,就需要使用yml

  • 配置管理常用方式
    ① 配置檔案:properties、yml
    ② 環境變數
    在這裡插入圖片描述
    在這裡插入圖片描述
    PS:報錯,需要忽略單元測試,使用-DskipTests,忽略單元測試

    ③ 外部配置檔案
    ④ 命令列引數
    在這裡插入圖片描述
    在這裡插入圖片描述

(6)profile

如何使用不同環境的配置檔案?怎麼使用?

  • 使用yml配置檔案
    在這裡插入圖片描述
    在這裡插入圖片描述
    預設使用開發環境配置
    在這裡插入圖片描述
  • 使用properties配置檔案,需拆分:application.properties、application-dev.properties、application.prod.properties

相關文章