出版信息
Spring Boot + Vue.js全棧開發從入門到實戰
作者:陳恆 主編;關菁華、張立傑、孫國元、李敏 副主編
定價:79.80元
印次:1-1
ISBN:9787302659556
出版日期:2024.07.01
印刷日期:2024.05.21
內容簡介
本書全面介紹 Spring Boot 3 + Vue.js 3全棧開發的基本思想、方法和技術。全書共 13章,內容涵蓋 Spring基礎、Spring MVC基礎、Spring Boot核心知識、Web開發、數據訪問、MyBatis與 MyBatis-Plus框架基礎、安全控制、異步訊息、單元測試、Vue.js基礎與進階、電子商務平台的設計與實現(Spring Boot + Vue.js 3 + MyBatis-Plus)等。書中實例側重實用性、通俗易懂,通過本書的學習,讀者能夠快速掌握 Spring Boot 3 + Vue.js 3全棧開發的基礎知識、編程技巧以及完整的開發體系,為大型項目開發打下堅實的基礎。 本書可作為大學計算機及相關專業的教材或教學參考書,也可作為 Java技術的培訓教材,適合具有 Java和 Java Web編程基礎的讀者,尤其適合廣大 Java EE套用開發人員閱讀與使用。
目錄
第1章 Spring基礎 1
學習目的與要求 1
本章主要內容 1
1.1 Spring概述 1
1.1.1 Spring的由來 1
1.1.2 Spring的體系結構 1
1.2 Spring開發環境的構建 3
1.2.1 配置IntelliJ IDEA的Web伺服器 4
1.2.2 Spring的下載 6
1.2.3 第一個Spring入門程式 6
1.3 Spring IoC 10
1.3.1 Spring IoC的基本概念 10
1.3.2 Spring的常用註解 10
1.3.3 基於註解的依賴注入 11
1.4 Spring AOP 14
1.4.1 Spring AOP的基本概念 14
1.4.2 基於註解開發AspectJ 17
1.5 Spring Bean 22
1.5.1 Bean的實例化 22
1.5.2 Bean的作用域 25
1.5.3 Bean的初始化和銷毀 27
1.6 本章小結 29
習題1 29
第2章 Spring MVC基礎 30
學習目的與要求 30
本章主要內容 30
2.1 Spring MVC的工作原理 31
2.2 Spring MVC的工作環境 32
2.2.1 Spring MVC所需要的JAR包 32
2.2.2 使用IntelliJ IDEA開發Spring MVC套用 32
2.2.3 基於Java配置的Spring MVC套用 39
2.3 基於註解的控制器 42
2.3.1 Controller註解類型 42
2.3.2 RequestMapping註解類型 42
2.3.3 編寫請求處理方法 44
2.3.4 Controller接收請求參數的常見方式 45
2.3.5 重定向與轉發 51
2.3.6 套用@Autowired進行依賴注入 52
2.3.7 @ModelAttribute 54
2.4 JSON數據互動 55
2.4.1 JSON數據結構 55
2.4.2 JSON數據轉換 56
2.5 Spring MVC的基本配置 61
2.5.1 靜態資源配置 61
2.5.2 攔截器配置 62
2.5.3 檔案上傳配置 63
2.6 本章小結 69
習題2 69
第3章 Spring Boot入門 69
學習目的與要求 69
本章主要內容 69
3.1 Spring Boot概述 69
3.1.1 什麼是Spring Boot 69
3.1.2 Spring Boot的優點 69
3.1.3 Spring Boot的主要特性 69
3.2 第一個Spring Boot套用 70
3.2.1 Maven簡介 70
3.2.2 Maven的pom.xml 71
3.2.3 使用IntelliJ IDEA快速構建Spring Boot套用 72
3.3 本章小結 75
習題3 75
第4章 Spring Boot核心 76
學習目的與要求 76
本章主要內容 76
4.1 Spring Boot的基本配置 76
4.1.1 啟動類和核心註解@SpringBootApplication 76
4.1.2 Spring Boot的全局配置檔案 77
4.1.3 Spring Boot的Starters 78
4.2 讀取套用配置 78
4.2.1 Environment 78
4.2.2 @Value 80
4.2.3 @ConfigurationProperties 80
4.2.4 @PropertySource 82
4.3 日誌配置 83
4.4 Spring Boot的自動配置原理 85
4.5 Spring Boot的條件註解 87
4.5.1 條件註解 87
4.5.2 自定義條件 87
4.5.3 自定義Starters 90
4.6 本章小結 97
習題4 97
第5章 Spring Boot的Web開發 98
學習目的與要求 98
本章主要內容 98
5.1 Spring Boot的Web開發支持 98
5.2 Thymeleaf模板引擎 98
5.2.1 Spring Boot的Thymeleaf支持 99
5.2.2 Thymeleaf基礎語法 100
5.2.3 Thymeleaf的常用屬性 103
5.2.4 Spring Boot與Thymeleaf實現頁面信息國際化 108
5.2.5 Spring Boot與Thymeleaf的表單驗證 113
5.2.6 基於Thymeleaf與BootStrap的Web開發實例 117
5.3 Spring Boot處理JSON數據 121
5.4 Spring Boot檔案上傳與下載 126
5.5 Spring Boot的異常統一處理 133
5.5.1 自定義error頁面 133
5.5.2 @ExceptionHandler註解 137
5.5.3 @ControllerAdvice註解 138
5.6 Spring Boot對JSP的支持 139
5.7 本章小結 142
習題5 142
第6章 Spring Boot的數據訪問 143
學習目的與要求 143
本章主要內容 143
6.1 Spring Data JPA 143
6.1.1 Spring Boot的支持 144
6.1.2 簡單條件查詢 145
6.1.3 關聯查詢 153
6.1.4 @Query和@Modifying註解 173
6.1.5 排序與分頁查詢 174
6.2 REST 179
6.2.1 REST簡介 179
6.2.2 Spring Boot整合REST 181
6.2.3 Spring Data REST 181
6.2.4 REST服務測試 183
6.3 MongoDB 187
6.3.1 安裝MongoDB 188
6.3.2 Spring Boot整合MongoDB 188
6.3.3 增刪改查 189
6.4 Redis 193
6.4.1 安裝Redis 194
6.4.2 Spring Boot整合Redis 198
6.4.3 使用StringRedisTemplate和RedisTemplate 199
6.5 數據快取Cache 204
6.5.1 Spring快取支持 204
6.5.2 Spring Boot快取支持 206
6.5.3 使用Redis Cache 211
6.6 本章小結 211
習題6 211
第7章 MyBatis與MyBatis-Plus 212
學習目的與要求 212
本章主要內容 212
7.1 Spring Boot整合MyBatis 212
7.2 MyBatis基礎 216
7.2.1 <select>元素 216
7.2.2 <insert>、<update>以及<delete>元素 220
7.2.3 動態SQL 221
7.3 MyBatis-Plus快速入門 224
7.3.1 MyBatis-Plus簡介 224
7.3.2 Spring Boot整合MyBatis-Plus 224
7.4 MyBatis-Plus基礎 227
7.4.1 MyBatis-Plus註解 227
7.4.2 CRUD 接口 230
7.4.3 條件構造器 239
7.5 本章小結 244
習題7 244
第8章 Spring Boot的安全控制 245
學習目的與要求 245
本章主要內容 245
8.1 Spring Security快速入門 245
8.1.1 什麼是Spring Security 245
8.1.2 Spring Security的用戶認證 245
8.1.4 Spring Security的請求授權 247
8.1.5 Spring Security的核心類 248
8.1.6 Spring Security的驗證機制 249
8.2 Spring Boot的支持 249
8.3 實際開發中的Spring Security操作實例 250
8.4 本章小結 262
習題8 262
第9章 異步訊息 263
學習目的與要求 263
本章主要內容 263
9.1 訊息模型 263
9.1.1 點對點式 263
9.1.2 發布/訂閱式 263
9.2 企業級訊息代理 263
9.2.1 JMS 264
9.2.2 AMQP 266
9.3 Spring Boot的支持 267
9.3.1 JMS的自動配置 267
9.3.2 AMQP的自動配置 268
9.4 異步訊息通信實例 268
9.4.1 JMS實例 268
9.4.2 AMQP實例 273
9.5 本章小結 278
習題9 278
第10章 Spring Boot單元測試 279
學習目的與要求 279
本章主要內容 279
10.1 Junit 5 279
10.1.1 Junit 5簡介 279
10.1.2 Junit 5註解 279
10.1.3 Junit 5斷言 281
10.2 單元測試用例 283
10.2.1 測試環境構建 283
10.2.2 測試Mapper接口 285
10.2.3 測試Service層 286
10.3 使用Postman測試Controller層 287
10.4 本章小結 291
習題10 291
第11章 Vue.js基礎 292
學習目的與要求 292
本章主要內容 292
11.1 網站互動方式 292
11.1.1 多頁應用程式 292
11.1.2 單頁應用程式 293
11.2 MVVM模式 294
11.3 Vue.js是什麼 295
11.4 安裝Vue.js 295
11.4.1 本地獨立版本方法 295
11.4.2 CDN方法 295
11.4.3 NPM方法 296
11.4.4 命令行工具(CLI)方法 296
11.5 第一個Vue.js程式 296
11.5.1 安裝Visual Studio Code及其外掛程式 296
11.5.2 創建第一個Vue.js套用 297
11.5.3 聲明式渲染 299
11.5.4 Vue.js生命周期 300
11.6 插值與表達式 302
11.6.1 文本插值 303
11.6.2 原始HTML插值 303
11.6.3 JavaScript表達式 303
11.7 計算屬性和監聽器 303
11.7.1 計算屬性computed 303
11.7.2 監聽器屬性watch 307
11.8 內置指令 309
11.8.1 v-bind指令 309
11.8.2 條件渲染指令v-if和v-show 310
11.8.3 列表渲染指令v-for 312
11.8.4 事件處理 314
11.8.5 表單與v-model 316
11.8.6 實戰:購物車實例 318
11.9 組件 321
11.9.1 組件註冊 322
11.9.2 使用props傳遞數據 324
11.9.3 組件通信 327
11.9.4 動態與異步組件 333
11.9.5 實戰:正整數數字輸入框組件 334
11.10 自定義指令 336
11.10.1 自定義指令註冊 336
11.10.2 實戰:實時時間轉換指令 338
11.11 回響性 340
11.11.1 什麼是回響性 340
11.11.2 回響性原理 341
11.12 setup組件選項 342
11.12.1 setup函式的參數 342
11.12.2 setup函式的返回值 344
11.12.3 使用ref創建回響式引用 345
11.12.4 setup內部調用生命周期鉤子函式 346
11.13 本章小結 346
習題11 346
第12章 Vue.js進階 350
學習目的與要求 350
本章主要內容 350
12.1 單檔案組件與webpack 350
12.2 安裝Node.js和NPM 351
12.2.1 安裝Node.js 351
12.2.2 NPM常用命令 352
12.3 Vue Router 354
12.3.1 Vue Router的安裝 355
12.3.2 Vue Router基本用法 360
12.3.3 Vue Router高級套用 366
12.3.4 路由鉤子函式 380
12.3.5 路由元信息 384
12.3.6 登錄許可權驗證示例 385
12.4 setup語法糖 388
12.4.1 屬性與方法的綁定 389
12.4.2 路由 390
12.4.3 組件傳值 392
12.5 Element Plus UI組件庫 395
12.5.1 Element Plus安裝 395
12.5.2 Element Plus組件介紹 395
12.5.3 Element Plus組件套用 396
12.5.4 按需引入Element Plus 398
12.6 本章小結 400
習題12 400
第13章 電子商務平台的設計與實現(Spring Boot + Vue.js 3 + MyBatis-Plus) 402
學習目的與要求 402
本章主要內容 402
13.1 系統設計 402
13.1.1 系統功能需求 402
13.1.2 系統模組劃分 403
13.2 資料庫設計 403
13.2.1 資料庫概念結構設計 404
13.2.2 資料庫邏輯結構設計 405
13.3 使用IntelliJ IDEA構建後端系統 407
13.3.1 創建Spring Boot Web套用 407
13.3.2 修改pom.xml 407
13.3.3 配置數據源等信息 407
13.3.4 創建持久化實體類 408
13.3.5 創建Mapper接口 408
13.3.6 創建業務層 410
13.3.7 創建控制器層 420
13.3.8 創建跨域回響頭設定過濾器 426
13.3.9 創建工具類 426
13.3.10 MyBatis-Plus分頁外掛程式、Redis以及Token簽名配置 426
13.4 使用Vue CLI構建前端系統 427
13.4.1 使用Vue CLI構建前端項目ebusiness-vue 427
13.4.2 安裝Element Plus和@element-plus/icons-vue 427
13.4.3 安裝ECharts 428
13.4.4 安裝Axios模組並設定跨域訪問 428
13.4.5 管理員登錄組件 428
13.4.6 後台管理主界面組件 431
13.4.7 商品類型管理組件 431
13.4.8 商品管理組件 432
13.4.9 訂單管理組件 432
13.4.10 銷量統計(按月)組件 436
13.4.11 訂單統計(按類型)組件 438
13.4.12 前端首頁組件 441
13.4.13 用戶註冊組件 443
13.4.14 用戶登錄組件 443
13.4.15 個人信息組件 444
13.4.16 商品詳情組件 444
13.4.17 我的購物車組件 448
13.4.18 我的訂單組件 453
13.4.19 我的收藏組件 453
13.4.20 訂單確認組件 454
13.4.21 配置路由 454
13.5 測試運行 457
13.6 小結 457
習題13 457