Spring Boot 3 +Vue 3開(kāi)發(fā)實(shí)戰(zhàn)
定 價(jià):109 元
- 作者:朱建昕
- 出版時(shí)間:2023/9/1
- ISBN:9787121463150
- 出 版 社:電子工業(yè)出版社
- 中圖法分類(lèi):TP312.8;TP393.092.2
- 頁(yè)碼:384
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書(shū)采用"項(xiàng)目貫穿式”的形式編寫(xiě),從一個(gè)Alan人事管理系統(tǒng)入手,循序漸進(jìn),將Spring Boot 3和Vue 3的知識(shí)點(diǎn)融入項(xiàng)目中;并詳細(xì)介紹各項(xiàng)技術(shù)、分析源碼、剖析原理,使讀者能夠快速地將知識(shí)轉(zhuǎn)換成技能,順利地進(jìn)行項(xiàng)目開(kāi)發(fā)實(shí)戰(zhàn)。 軟件開(kāi)發(fā)技術(shù)日新月異、不勝枚舉,常常讓人置身其中,不知如何取舍。本書(shū)對(duì)同類(lèi)技術(shù)進(jìn)行充分對(duì)比,并厘清前后端三十年的技術(shù)發(fā)展脈絡(luò),使讀者在工作中具備根據(jù)項(xiàng)目的規(guī)模應(yīng)用場(chǎng)景,做好恰當(dāng)?shù)募軜?gòu)設(shè)計(jì)和技術(shù)選型的能力。 本書(shū)適合Java軟件開(kāi)發(fā)從業(yè)人員對(duì)Java和Web前端高級(jí)知識(shí)的學(xué)習(xí),以提升技術(shù)水平;還適合作為大學(xué)計(jì)算機(jī)、軟件開(kāi)發(fā)專(zhuān)業(yè)學(xué)生的參考用書(shū)。
朱建昕,曾在世界五百?gòu)?qiáng)公司、國(guó)內(nèi)上市軟件公司從事過(guò)開(kāi)發(fā)、架構(gòu)、管理等工作,曾在IT職業(yè)培訓(xùn)公司擔(dān)任過(guò)Java講師、教學(xué)總監(jiān)等職務(wù),研究方向?yàn)镴ava、JavaScript、Spring家族、Vue。
目 錄
第1章 Spring Boot與貫穿項(xiàng)目介紹 1
1.1 Spring Boot介紹 1
1.1.1 Spring Boot特性 2
1.1.2 Spring Initializr 3
1.2 開(kāi)發(fā)環(huán)境 4
1.2.1 JDK 4
1.2.2 Maven 5
1.2.3 Gradle 5
1.2.4 Git 5
1.2.5 MySQL 5
1.2.6 Eclipse 6
1.2.7 Intellij IDEA 6
1.2.8 在IDEA中集成Maven 7
1.3 Spring Boot案例 7
1.3.1 創(chuàng)建項(xiàng)目 8
1.3.2 項(xiàng)目結(jié)構(gòu) 9
1.3.3 第一個(gè)案例 11
1.4 Spring Boot Test 12
1.5 貫穿項(xiàng)目的需求與設(shè)計(jì) 13
1.5.1 Alan人事管理系統(tǒng) 14
1.5.2 技術(shù)選型 14
1.5.3 員工管理模塊和部門(mén)管理模塊 15
1.5.4 權(quán)限管理模塊 15
1.5.5 數(shù)據(jù)庫(kù)設(shè)計(jì) 17
1.5.6 實(shí)體類(lèi)設(shè)計(jì) 18
1.5.7 界面設(shè)計(jì) 19
1.6 本章總結(jié) 20
第2章 Spring Boot+SSM實(shí)戰(zhàn) 21
2.1 創(chuàng)建Spring Boot Module貫穿項(xiàng)目 21
2.1.1 創(chuàng)建Module 22
2.1.2 Alan人事管理系統(tǒng)項(xiàng)目結(jié)構(gòu) 23
2.2 Spring Boot簡(jiǎn)化配置 24
2.2.1 簡(jiǎn)化Maven依賴(lài)配置 24
2.2.2 簡(jiǎn)化SSM框架配置 27
2.3 MyBatis 28
2.3.1 解耦合 29
2.3.2 參數(shù) 30
2.3.3 關(guān)聯(lián)關(guān)系 33
2.3.4 動(dòng)態(tài)語(yǔ)句 36
2.3.5 DAO層設(shè)計(jì) 37
2.4 Spring 38
2.4.1 DI 38
2.4.2 AOP 39
2.4.3 Service設(shè)計(jì) 40
2.5 Spring MVC 41
2.5.1 URL映射 41
2.5.2 接收參數(shù) 43
2.5.3 轉(zhuǎn)發(fā)、重定向、響應(yīng)JSON 44
2.5.4 Controller 設(shè)計(jì) 46
2.6 本章總結(jié) 48
第3章 顯示層技術(shù)演變與Thymeleaf 49
3.1 顯示層技術(shù)演變 49
3.1.1 靜態(tài)網(wǎng)站 49
3.1.2 CGI 50
3.1.3 Servlet 50
3.1.4 JSP 51
3.1.5 模板引擎 52
3.1.6 模板引擎對(duì)比 53
3.1.7 前后端分離 54
3.2 Thymeleaf 55
3.3 在IDEA中復(fù)制項(xiàng)目并搭建環(huán)境 55
3.4 Thymeleaf詳解 57
3.4.1 指令與顯示 57
3.4.2 表達(dá)式 58
3.4.3 表達(dá)式運(yùn)算 60
3.4.4 選擇分支 61
3.4.5 循環(huán) 62
3.4.6 設(shè)置屬性值 64
3.4.7 CSS修飾 65
3.4.8 片段 66
3.5 Thymeleaf高級(jí)特性 66
3.5.1 全局工具對(duì)象 66
3.5.2 內(nèi)聯(lián)操作 67
3.6 Thymeleaf項(xiàng)目實(shí)戰(zhàn) 69
3.6.1 顯示頁(yè)面 69
3.6.2 新增頁(yè)面 71
3.6.3 修改頁(yè)面 71
3.7 本章總結(jié) 72
第4章 傳統(tǒng)Web前端設(shè)計(jì) 73
4.1 前端設(shè)計(jì)介紹 73
4.1.1 網(wǎng)頁(yè)設(shè)計(jì)技術(shù) 74
4.1.2 網(wǎng)站通信技術(shù) 76
4.2 Bootstrap 77
4.2.1 柵格化 77
4.2.2 控件 78
4.2.3 Bootstrap項(xiàng)目實(shí)戰(zhàn) 78
4.3 jQuery 80
4.3.1 常用API 80
4.3.2 jQuery項(xiàng)目實(shí)戰(zhàn) 81
4.4 iframe復(fù)用技術(shù)實(shí)現(xiàn)首頁(yè) 83
4.5 AJAX 85
4.5.1 AJAX特性 85
4.5.2 AJAX項(xiàng)目實(shí)戰(zhàn) 86
4.5.3 模態(tài)框 88
4.5.4 JavaScript UI介紹 90
4.6 本章總結(jié) 91
第5章 Spring Boot特性與原理 92
5.1 spring-boot-dependencies管理依賴(lài) 92
5.1.1 版本管理 92
5.1.2 spring-boot-starter簡(jiǎn)化依賴(lài) 93
5.2 簡(jiǎn)化配置 95
5.2.1 properties和YAML 95
5.2.2 Java Config 97
5.3 快速運(yùn)行 99
5.3.1 內(nèi)置Web容器 99
5.3.2 熱部署 100
5.3.3 啟動(dòng)類(lèi) 100
5.4 推薦技術(shù) 101
5.4.1 HikariCP數(shù)據(jù)庫(kù)連接池 102
5.4.2 Java日志發(fā)展史與Logback 103
5.5 Spring Boot原理與源碼分析 107
5.5.1 @SpringBootApplication注解 108
5.5.2 Spring Boot啟動(dòng)流程 109
5.6 本章總結(jié) 115
第6章 持久層發(fā)展與Spring Data JPA 116
6.1 相關(guān)技術(shù)介紹 116
6.1.1 Spring Data 116
6.1.2 Hibernate 117
6.1.3 JPA 117
6.1.4 Spring Data JPA 118
6.2 Spring Data JPA詳解 118
6.2.1 環(huán)境搭建 118
6.2.2 實(shí)體類(lèi) 120
6.2.3 Repository接口 121
6.2.4 基本的新增、刪除、修改、查詢(xún)操作 123
6.2.5 方法命名查詢(xún) 125
6.2.6 JPQL 126
6.3 關(guān)聯(lián)關(guān)系 129
6.3.1 多對(duì)一 130
6.3.2 一對(duì)多 133
6.3.3 多對(duì)多 137
6.4 Spring Data JPA項(xiàng)目實(shí)戰(zhàn) 138
6.4.1 實(shí)體類(lèi)開(kāi)發(fā) 138
6.4.2 DAO層開(kāi)發(fā) 140
6.4.3 Service層及動(dòng)態(tài)條件查詢(xún) 141
6.4.4 多對(duì)多視圖層開(kāi)發(fā) 143
6.5 本章總結(jié) 147
第7章 緩存與Redis 148
7.1 Redis介紹 148
7.1.1 Redis特性 149
7.1.2 Redis數(shù)據(jù)結(jié)構(gòu) 149
7.2 Redis詳解 149
7.2.1 安裝Redis 149
7.2.2 Redis命令 150
7.3 Spring Boot操作Redis 151
7.3.1 Spring Data Redis 152
7.3.2 Redis Repository 158
7.4 Spring Cache 162
7.4.1 Spring Cache介紹 163
7.4.2 Spring Cache詳解 163
7.4.3 Spring Cache項(xiàng)目實(shí)戰(zhàn) 165
7.5 本章總結(jié) 168
第8章 認(rèn)證、授權(quán)與Spring Security 169
8.1 安全框架 169
8.1.1 安全框架比較 169
8.1.2 RBAC詳解與設(shè)計(jì) 170
8.1.3 Spring Security環(huán)境配置 172
8.2 認(rèn)證 173
8.2.1 Properties存儲(chǔ)用戶(hù) 173
8.2.2 Spring Security Config 173
8.2.3 配置登錄 175
8.2.4 數(shù)據(jù)庫(kù)存儲(chǔ)用戶(hù) 178
8.2.5 加密技術(shù)、MD5和Bcrypt 180
8.3 授權(quán) 183
8.3.1 授權(quán)配置 183
8.3.2 Config配置方式 186
8.3.3 @PreAuthorize注解方式 188
8.3.4 過(guò)濾URL方式 189
8.4 視圖層權(quán)限 193
8.5 本章總結(jié) 194
第9章 Vue基礎(chǔ) 196
9.1 Vue介紹 196
9.1.1 MVVM思想 197
9.1.2 前端三大框架介紹 197
9.2 DOM編程與MVVM編程對(duì)比 198
9.2.1 改變?cè)貎?nèi)容案例 198
9.2.2 表單與表格案例 200
9.3 Vue語(yǔ)法 203
9.3.1 Vue對(duì)象和文本渲染 203
9.3.2 選擇分支 204
9.3.3 循環(huán) 205
9.3.4 CSS處理 207
9.3.5 事件 208
9.3.6 表單 209
9.4 Vue項(xiàng)目實(shí)戰(zhàn) 210
9.4.1 Vue環(huán)境搭建 210
9.4.2 員工展示 211
9.4.3 條件查詢(xún) 213
9.4.4 選中表格數(shù)據(jù) 214
9.4.5 改造按鈕與刪除員工 214
9.4.6 新增員工 215
9.4.7 修改員工 216
9.5 本章總結(jié) 217
第10章 RESTful與接口文檔 218
10.1 RESTful介紹 219
10.1.1 RESTful原則 219
10.1.2 RESTful風(fēng)格的URL 220
10.2 Spring MVC RESTful支持 221
10.3 RESTful項(xiàng)目實(shí)戰(zhàn) 223
10.4 測(cè)試接口 227
10.5 Swagger 228
10.5.1 Swagger項(xiàng)目實(shí)戰(zhàn) 229
10.6 本章總結(jié) 232
第11章 Vue 3+Vite+TypeScript前端工程化 233
11.1 前端工程化簡(jiǎn)介 233
11.1.1 前端工程化的必要性 233
11.1.2 前端工程化的現(xiàn)狀 234
11.2 前端工程化技術(shù)概覽 235
11.2.1 ECMAScript 235
11.2.2 TypeScript 235
11.2.3 NodeJS 236
11.2.4 npm 237
11.2.5 Webpack與Rollup 237
11.2.6 Babel 237
11.2.7 Vue CLI 238
11.2.8 Vite 238
11.3 ECMAScript語(yǔ)法 238
11.3.1 let和const 238
11.3.2 定義對(duì)象 239
11.3.3 import和export 241
11.3.4 箭頭函數(shù) 242
11.4 Vue前端工程化環(huán)境搭建 244
11.4.1 安裝NodeJS 244
11.4.2 安裝npm 244
11.4.3 WebStorm 244
11.5 使Vite創(chuàng)建Vue項(xiàng)目 245
11.5.1 Vite創(chuàng)建項(xiàng)目 245
11.5.2 Vue項(xiàng)目歡迎頁(yè)面代碼解析 247
11.6 本章總結(jié) 250
第12章 Vue高級(jí) 251
12.1 組件 251
12.1.1 定義組件 252
12.1.2 復(fù)用組件 253
12.1.3 組件傳參 256
12.2 組合式API與setup語(yǔ)法糖 259
12.2.1 組合式API 259
12.2.2 setup語(yǔ)法糖 262
12.2.3 響應(yīng)式函數(shù)ref()和reactive() 263
12.3 路由 264
12.3.1 定義路由 264
12.3.2 路由跳轉(zhuǎn) 266
12.3.3 嵌套路由 269
12.3.4 路由傳參 270
12.4 Hash和History的原理 270
12.5 axios 272
12.6 本章總結(jié) 273
第13章 Spring Boot+Vue前后端分離項(xiàng)目實(shí)戰(zhàn) 274
13.1 選項(xiàng)式API項(xiàng)目實(shí)戰(zhàn) 274
13.1.1 引入技術(shù)依賴(lài) 274
13.1.2 員工管理模塊 276
13.1.3 解決跨域問(wèn)題 279
13.1.4 Index組件 279
13.2 組合式API項(xiàng)目實(shí)戰(zhàn) 281
13.3 setup語(yǔ)法糖項(xiàng)目實(shí)戰(zhàn) 283
13.4 本章總結(jié) 284
第14章 Element Plus 285
14.1 Element Plus介紹 285
14.1.1 Element Plus特點(diǎn) 286
14.1.2 Element Plus案例 286
14.1.3 搭建環(huán)境 287
14.2 Element Plus項(xiàng)目實(shí)戰(zhàn) 288
14.2.1 首頁(yè)布局 288
14.2.2 導(dǎo)航欄 289
14.2.3 表格 291
14.2.4 查詢(xún)表單 293
14.2.5 按鈕 295
14.2.6 彈出框提示 295
14.2.7 新增員工表單 296
14.2.8 自消失彈出框 297
14.3 本章總結(jié) 299
第15章 SPA富客戶(hù)端 300
15.1 SPA介紹 300
15.1.1 SPA優(yōu)缺點(diǎn) 301
15.1.2 富客戶(hù)端設(shè)計(jì) 301
15.2 富客戶(hù)端項(xiàng)目實(shí)戰(zhàn) 302
15.2.1 Index視圖組件開(kāi)發(fā) 302
15.2.2 標(biāo)簽頁(yè)設(shè)計(jì) 304
15.2.3 標(biāo)簽頁(yè)優(yōu)化 305
15.2.4 彈出框 307
15.2.5 員工組件重新設(shè)計(jì) 308
15.2.6 組件解耦重構(gòu) 311
15.2.7 組件再次解耦重構(gòu) 316
15.3 本章總結(jié) 317
第16章 前后端分離下的跨域、認(rèn)證與授權(quán) 318
16.1 瀏覽器同源策略 319
16.2 跨域解決方案 319
16.2.1 CORS 320
16.2.2 反向代理 322
16.3 前后端分離項(xiàng)目認(rèn)證 325
16.3.1 反向代理實(shí)現(xiàn)認(rèn)證 325
16.3.2 CORS實(shí)現(xiàn)認(rèn)證 329
16.3.3 JWT實(shí)現(xiàn)認(rèn)證 330
16.4 前端界面權(quán)限控制 342
16.4.1 注銷(xiāo) 342
16.4.2 菜單級(jí)權(quán)限 343
16.5 Pinia 346
16.6 本章總結(jié) 349
第17章 項(xiàng)目完善及補(bǔ)充技術(shù) 350
17.1 分頁(yè) 350
17.1.1 后端實(shí)現(xiàn) 350
17.1.2 前端實(shí)現(xiàn) 353
17.2 CreateTime和ModifyTime 355
17.3 文件上傳 356
17.3.1 Spring MVC接收文件 357
17.3.2 表單上傳文件 359
17.3.3 AJAX上傳文件 361
17.3.4 前后端分離下的文件上傳 363
17.4 Lombok 365
17.5 最終項(xiàng)目展示 367
17.6 本章總結(jié) 369