內容簡介
本書基於Spring Boot2.7.3版本,配合源碼的講解,全面深入地講解了Spring Boot的底層原理及主要套用,重點介紹使用Spring Boot進行微服務項目的快速開發。全書共9章,主要包括Spring Boot入門、Spring Boot基礎、Spring Boot的數據訪問、Spring Boot整合核心開發知識點、Spring Boot單元測試、Spring Boot安全管理、Spring Boot訊息服務、Spring Boot的指標監控、智慧工地監控大數據平台。
本書可作為高等院校計算機等專業的教學用書,也可作為程式設計人員的參考書。
圖書目錄
第 1章 Spring Boot入門 1
1.1 Spring Boot簡介 1
1.1.1 Spring Boot的生態 1
1.1.2 Spring Boot優缺點 2
1.1.3 微服務的興起 2
1.2 Spring Boot環境配置 3
1.2.1 系統及軟體要求 3
1.2.2 配置Maven環境 3
1.3 Spring Boot簡單套用 4
1.3.1 創建Maven項目 4
1.3.2 項目構建 6
1.3.3 項目啟動 7
1.3.4 Spring Initializr快速創建 7
1.3.5 項目打包 8
1.4 本章小結 10
1.5 習題 10
第 2章 Spring Boot基礎 11
2.1 常用註解 11
2.1.1 容器注入註解 11
2.1.2 配置檔案註解 13
2.2 YAML配置 15
2.2.1 常規配置 15
2.2.2 複雜配置 16
2.3 配置環境切換 18
2.3.1 配置檔案指定 19
2.3.2 YAML多檔案塊模式
指定 19
2.4 Spring Boot依賴管理 20
2.4.1 使用父依賴管理版本 20
2.4.2 使用dependencyManagement
管理版本 21
2.5 Spring Boot自動裝配原理 22
2.5.1 Spring Boot載入步驟 22
2.5.2 Spring Boot的自動
配置類 23
2.6 本章小結 25
2.7 習題 25
第3章 Spring Boot的數據訪問 27
3.1 數據源的自動配置 27
3.1.1 JdbcTemplate的自動配置 27
3.1.2 JdbcTemplate的使用 29
3.2 整合Druid數據源 30
3.2.1 Spring Boot數據源管理 31
3.2.2 引入Druid數據源 32
3.3 整合MyBatis 33
3.3.1 引入MyBatis框架啟動器 33
3.3.2 使用MyBatis完成開發 34
3.4 整合Redis 37
3.4.1 Redis簡介 38
3.4.2 Docker容器部署Redis 38
3.4.3 Spring Boot整合Redis 40
3.4.4 Redis集群搭建一主二從三
哨兵 43
3.5 本章小結 46
3.6 習題 46
第4章 Spring Boot整合核心開發
知識點 48
4.1 靜態資源訪問 48
4.1.1 靜態資源訪問概述 48
4.1.2 Spring Boot的默認訪問
策略 49
4.1.3 驗證Spring Boot靜態資源
訪問 49
4.1.4 靜態資源訪問原理 50
4.1.5 自定義訪問策略 51
4.2 檔案上傳 52
4.2.1 本地檔案的上傳 52
4.2.2 雲伺服器的上傳 55
4.3 跨域處理 58
4.3.1 同源安全策略與跨域 58
4.3.2 瀏覽器對跨域的處理 59
4.3.3 CORS處理跨域問題 61
4.3.4 Nginx代理訪問 64
4.4 Knife4j 65
4.4.1 Knife4j簡介 65
4.4.2 Spring Boot整合Knife4j 66
4.5 異步任務與定時任務 68
4.5.1 異步任務 68
4.5.2 定時任務 71
4.6 Thymeleaf模板引擎 72
4.7 郵件服務 74
4.7.1 郵件服務核心概念 74
4.7.2 簡單郵件的傳送 75
4.7.3 模板郵件的傳送 77
4.8 本章小結 78
4.9 習題 78
第5章 Spring Boot單元測試 80
5.1 JUnit5概述 80
5.2 JUnit5常用註解 81
5.3 斷言 85
5.3.1 簡單斷言 85
5.3.2 數組斷言 87
5.3.3 組合斷言 87
5.3.4 異常斷言 88
5.3.5 逾時斷言 88
5.3.6 快速失敗斷言 89
5.4 前置條件 89
5.5 嵌套測試 90
5.6 參數化測試 91
5.7 本章小結 93
5.8 習題 93
第6章 Spring Boot安全管理 94
6.1 RBAC許可權 94
6.1.1 RBAC簡介 94
6.1.2 RBAC實戰 94
6.2 Spring Security核心組件 95
6.2.1 SecurityContextHolder 95
6.2.2 SecurityContext與
Authentication 96
6.2.3 UserDetails 97
6.2.4 AuthenticationManager 97
6.3 Spring Security前後端分離認證
流程 98
6.4 Spring Security的工作流程與
配置 99
6.4.1 編寫Spring Security
主配置類 99
6.4.2 登錄流程及配置 100
6.4.3 業務流程及配置 108
6.4.4 授權流程及配置 110
6.4.5 Spring Security登錄演示 114
6.4.6 Spring Security註解 116
6.5 本章小結 120
6.6 習題 120
第7章 Spring Boot訊息服務 121
7.1 訊息中間件的作用及優點 121
7.2 常用的訊息中間件 122
7.2.1 RabbitMQ 122
7.2.2 RocketMQ 123
7.2.3 Kafka 123
7.3 RabbitMQ訊息中間件的使用 124
7.3.1 RabbitMQ核心概念 124
7.3.2 RabbitMQ的工作原理 124
7.3.3 RabbitMQ的部署 125
7.3.4 RabbitMQ的使用 128
7.4 RabbitMQ的數據同步 134
7.4.1 訊息丟失 134
7.4.2 解決訊息丟失 134
7.4.3 RabbitMQ數據一致性
實戰 134
7.5 本章小結 140
7.6 習題 140
第8章 Spring Boot的指標監控 141
8.1 Spring Boot Actuator 141
8.1.1 Actuator端點 141
8.1.2 Actuator相關配置 144
8.2 Actuator的常用端點 145
8.2.1 health端點 145
8.2.2 metrics端點 147
8.2.3 loggers端點 148
8.3 定製化Actuator 149
8.3.1 定製health信息 149
8.3.2 定製info信息 151
8.3.3 定製metrics信息 152
8.3.4 定製端點 153
8.4 可視化監控信息面板 154
8.5 郵件監控報警 156
8.6 本章小結 157
8.7 習題 158
第9章 智慧工地監控大數據平台 159
9.1 智慧工地監控大數據平台功能
概述 159
9.1.1 分類功能結構 159
9.1.2 項目功能體現 160
9.2 資料庫設計 167
9.2.1 設計E-R圖 167
9.2.2 資料庫表設計 169
9.3 後端項目搭建 171
9.3.1 創建Spring Boot項目 171
9.3.2 導入Maven依賴 172
9.3.3 創建Spring Boot的目錄
結構 174
9.3.4 編寫Spring Boot項目的配置
檔案 175
9.3.5 搭建外設伺服器 176
9.4 前端項目搭建 176
9.4.1 配置前端編碼環境 177
9.4.2 創建Vue-Cli3項目 178
9.4.3 創建Vue項目的目錄
結構 178
9.5 配置後端代碼自動生成 179
9.6 登錄功能模組 183
9.6.1 前端功能的編寫 183
9.6.2 後端功能的編寫 188
9.7 標題欄功能模組 190
9.7.1 前端功能的編寫 190
9.7.2 後端功能的編寫 191
9.8 選單欄功能模組 192
9.9 選單功能模組 193
9.9.1 前端功能的編寫 193
9.9.2 後端功能的編寫 195
9.10 用戶功能模組 195
9.10.1 前端功能的編寫 195
9.10.2 後端功能的編寫 196
9.11 角色功能模組 196
9.11.1 前端功能的編寫 196
9.11.2 後端功能的編寫 198
9.12 許可權功能模組 199
9.12.1 前端功能的編寫 199
9.12.2 後端功能的編寫 199
9.13 大數據展示功能模組 200
9.14 項目部署 201
9.14.1 後端代碼的打包與
部署 201
9.14.2 前端代碼的打包與
部署 202
9.15 本章小結 204