Vue.js+Spring Boot全棧開發(fā)實戰(zhàn)
定 價:69.8 元
叢書名:Web開發(fā)人才培養(yǎng)系列叢書
- 作者:柳偉衛(wèi)
- 出版時間:2023/9/1
- ISBN:9787115614629
- 出 版 社:人民郵電出版社
- 中圖法分類:TP393.092.2
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:128開
本書介紹Vue.js+Spring Boot全棧開發(fā)所使用的技術,包括Vue.js 3、Naive UI、md-editor-v3、NGINX、TypeScript、Spring Boot、Spring MVC、Spring Data、Hibernate、H2、MySQL、Spring Security等開源技術,知識點涉及模塊、測試、緩沖區(qū)、事件處理、HTTP編程、組件、模板、指令、監(jiān)聽器、表達式、事件、表單、HTTP客戶端、MVC、JPA、數(shù)據(jù)存儲、安全等眾多話題。內容豐富、案例新穎,知識難度由淺及深、層層推進,將理論聯(lián)系實際,具有非常強的實操性。這些知識點既能滿足當前企業(yè)級應用的開發(fā)需求,又能大幅度減輕開發(fā)者的負擔。本書所介紹的知識較為前沿,并輔以大量的案例,令讀者知其然、知其所以然。讀者通過學習本書,可以拓展視野,提升個人技術競爭能力。
本書適合作為Vue.js+Spring Boot全棧開發(fā)初學者和進階讀者的自學教程,也適合作為培訓學校的培訓教材,還適合作為大、中專院校相關專業(yè)的教學參考書。
知識面廣。無論是前端的Vue.js、Naive UI、md-editor-v3、JavaScript、TypeScript,還是后端的Spring Boot、Spring MVC、Spring Data、Hibernate、H2、MySQL、Spring Security等,本書均有著墨。
版本新穎。本書所涉及的技術版本,均為目前新版本。
案例豐富。全書共計有40個知識點實例和4個綜合實戰(zhàn)案例。
全棧通吃。熟習本書,可以掌握全棧開發(fā)技能。
在多家 IT 公司擔任項目經理、架構師、高級開發(fā)顧問等職位,具有多年軟件開發(fā)管理及系統(tǒng)架構經驗。負責過多個省、國家級大型分布式系統(tǒng)的設計與研發(fā),參與了多個大型項目的微服務架構的技術改造,在實際工作中,積累了大量的分布式系統(tǒng)及微服務架構經驗。業(yè)余時間創(chuàng)建了 waylau.com 網站,用于分享個人技術心得。喜歡開源,長期躍于各大開源社區(qū),是 CSDN、 開源中國、云棲社區(qū)等技術社區(qū)專家。為開源社區(qū)無私編著了《Spring Framework 4.x參考文檔》、《Netty 實戰(zhàn)(精髓)》、《REST 實戰(zhàn)》、《分布式 Java》、《Spring Boot 教程》、《Spring Security 教程》、《Thymeleaf 教程》等近30余篇技術教程,廣受網友好評。其中出版了《分布式系統(tǒng)常用技術及案例分析》、《Spring Boot 企業(yè)級應用開發(fā)實戰(zhàn)》、《Spring Cloud 微服務架構開發(fā)實戰(zhàn)》等專著。
第 1章 Vue.js+Spring Boot全棧開發(fā)概述
1.1 Vue.js+Spring Boot全棧開發(fā)核心技術棧的組成
1.1.1 Vue.js
1.1.2 Spring Boot
1.2 Vue.js+Spring Boot全棧開發(fā)周邊技術棧的組成
1.2.1 Naive UI
1.2.2 md-editor-v3
1.2.3 Nginx
1.2.4 Spring Security
1.2.5 Spring MVC
1.2.6 Spring Data
1.2.7 Hibernate
1.2.8 H2
1.2.9 MySQL
1.3 Vue.js+Spring Boot全棧開發(fā)的優(yōu)勢
1.4 開發(fā)工具的選擇
1.4.1 前端開發(fā)工具的選擇
1.4.2 后端開發(fā)工具的選擇
1.5 總結
1.6 習題
第 2章 Vue.js基礎
2.1 Vue.js產生的背景
2.1.1 Vue.js與jQuery的不同
2.1.2 Vue.js與React、Angular優(yōu)勢對比
2.1.3 Vue.js、React、Angular三者怎么選
2.2 Vue.js的下載安裝
2.2.1 安裝Node.js和npm
2.2.2 Node.js與npm的關系
2.2.3 安裝npm鏡像
2.2.4 安裝Vue CLI
2.2.5 安裝Vue Devtools
2.3 Vue CLI的常用操作
2.3.1 獲取幫助
2.3.2 創(chuàng)建應用
2.3.3 創(chuàng)建服務
2.3.4 啟動應用
2.3.5 編譯應用
2.4 實例1:創(chuàng)建第 一個Vue.js應用
2.4.1 使用Vue CLI初始化應用
2.4.2 運行Vue應用
2.4.3 增加對TypeScript的支持
2.5 探索Vue.js應用結構
2.5.1 整體項目結構
2.5.2 項目根目錄文件
2.5.3 node_modules目錄
2.5.4 public目錄
2.5.5 src目錄
2.6 總結
2.7 習題
第3章 Vue.js應用實例
3.1 創(chuàng)建應用實例
3.1.1 第 一個應用實例
3.1.2 讓應用實例執(zhí)行方法
3.1.3 理解選項對象
3.1.4 理解根組件
3.1.5 理解MVVM模型
3.2 data的property與methods
3.2.1 理解data property
3.2.2 理解data methods
3.3 生命周期
3.3.1 什么是生命周期鉤子
3.3.2 生命周期圖示
3.3.3 實例2:生命周期鉤子的例子
3.4 總結
3.5 習題
第4章 Vue.js組件
4.1 組件的基本概念
4.1.1 實例3:一個Vue.js組件的示例
4.1.2 什么是組件
4.1.3 組件的復用
4.1.4 Vue組件與Web組件的異同點
4.2 組件交互方式
4.2.1 實例4:通過prop向子組件傳遞數(shù)據(jù)
4.2.2 實例5:監(jiān)聽子組件事件
4.2.3 實例6:兄弟組件之間的通信
4.2.4 實例7:通過插槽分發(fā)內容
4.3 讓組件可以動態(tài)加載
4.3.1 實現(xiàn)組件動態(tài)加載的步驟
4.3.2 實例8:動態(tài)組件的示例
4.4 使用緩存組件keep-alive
4.4.1 實例9:keep-alive的例子
4.4.2 keep-alive配置詳解
4.5 總結
4.6 習題
第5章 Vue.js模板
5.1 模板概述
5.2 實例10:插值
5.2.1 文本
5.2.2 原生HTML代碼
5.2.3 綁定HTML attribute
5.2.4 JavaScript表達式
5.3 實例11:在模板中使用指令
5.3.1 參數(shù)
5.3.2 理解指令中的動態(tài)參數(shù)
5.3.3 理解指令中的修飾符
5.4 實例12:在模板中使用指令的縮寫
5.4.1 使用v-bind縮寫
5.4.2 使用v-on縮寫
5.5 使用模板的一些約定
5.5.1 對動態(tài)參數(shù)值的約定
5.5.2 對動態(tài)參數(shù)表達式的約定
5.5.3 對訪問全局變量的約定
5.6 總結
5.7 習題
第6章 Vue.js計算屬性與監(jiān)聽器
6.1 通過實例理解“計算屬性”的必要性
6.2 實例13:一個計算屬性的例子
6.2.1 聲明計算屬性
6.2.2 模擬數(shù)據(jù)更改
6.3 計算屬性緩存與方法的關系
6.4 為什么需要偵聽器
6.4.1 理解偵聽器
6.4.2 實例14:一個偵聽器的例子
6.5 總結
6.6 習題
第7章 Vue.js表達式
7.1 條件表達式
7.1.1 實例15:v-if的例子
7.1.2 實例16:v-else的例子
7.1.3 實例17:v-else-if的例子
7.1.4 實例18:v-show的例子
7.2 for循環(huán)表達式
7.2.1 實例19:v-for遍歷數(shù)組的例子
7.2.2 實例20:v-for遍歷數(shù)組設置索引的例子
7.2.3 實例21:v-for遍歷對象property的例子
7.2.4 實例22:數(shù)組過濾的例子
7.2.5 實例23:使用值的范圍的例子
7.1.5 v-if與v-show的關系
7.3 v-for的不同使用場景
7.3.1 實例24:在中使用v-for的例子
7.3.2 實例25:v-for與v-if一同使用的例子
7.3.3 實例26:在組件上使用v-for的例子
7.4 總結
7.5 習題
第8章 Vue.js事件
8.1 什么是事件
8.1.1 實例27:監(jiān)聽事件的例子
8.1.2 理解事件處理方法
8.1.3 處理原始的DOM事件
8.1.4 為什么需要在HTML代碼中監(jiān)聽事件
8.2 實例28:多事件處理器的例子
8.3 事件修飾符
8.3.1 什么是事件修飾符
8.3.2 理解按鍵修飾符
8.3.3 理解系統(tǒng)修飾鍵
8.4 總結
8.5 習題
第9章 Vue.js表單
9.1 理解表單輸入綁定
9.2 實例29:表單輸入綁定的基礎用法
9.2.1 文本
9.2.2 多行文本
9.2.3 復選框
9.2.4 單選框
9.2.5 選擇框
9.3 實例30:值綁定
9.3.1 復選框
9.3.2 單選框
9.3.3 選擇框
9.4 總結
9.5 習題
第 10章 Vue.js HTTP客戶端
10.1 初識HttpClient
10.2 認識網絡資源
10.3 實例31:獲取API數(shù)據(jù)
10.3.1 引入vue-axios
10.3.2 獲取API數(shù)據(jù)
10.3.3 運行應用
10.4 總結
10.5 習題
第 11章 Spring Boot概述
11.1 傳統(tǒng)企業(yè)級應用開發(fā)之痛與革新
11.1.1 Java大事件
11.1.2 Java企業(yè)級應用現(xiàn)狀
11.1.3 革新
11.1.4 約定大于配置
11.2 Spring Boot 2總覽
11.2.1 解決傳統(tǒng)Spring開發(fā)過程中的痛點
11.2.2 Spring Boot的目標
11.2.3 Spring Boot不是什么
1. Spring Boot與Spring框架的關系
2. Spring Boot與Spring MVC框架的關系
3. Spring Boot與Spring Cloud框架的關系
11.2.4 Spring Boot 2新特性
11.3 實例32:快速開啟第 一個Spring Boot項目
11.3.1 配置環(huán)境
11.3.2 通過Spring Initializr初始化一個Spring Boot原型
11.3.3 用Gradle編譯項目
11.3.4 探索項目
11.3.5 如果提升Gradle的構建速度
11.4 實例33:如何進行Spring Boot項目的開發(fā)及測試
11.4.1 構建項目原型
11.4.2 編寫程序代碼
11.4.3 編寫測試用例
11.4.4 運行Spring Boot程序
11.4.5 其他運行程序的方式
11.5 總結
11.6 習題
第 12章 Spring框架核心概念
2.1 Spring框架總覽
12.1.1 模塊化的Spring框架
12.1.2 使用Spring的好處
12.1.3 依賴注入VS.控制反轉
12.1.4 Spring框架常用模塊
12.2 依賴注入與控制反轉
12.2.1 IoC容器和bean
12.2.2 配置元數(shù)據(jù)
12.2.3 實例化容器
12.2.4 兩種注入方式
12.2.5 bean范圍
12.2.6 注意singleton bean引用prototype bean時的陷阱
12.2.7 JSR-330規(guī)范注解
12.2.8 Spring Boot中的bean及依賴注入
12.3 AOP編程
12.3.1 AOP核心概念
12.3.2 Spring AOP功能和目標
12.3.3 AOP代理
12.3.4 使用@AspectJ
12.3.5 實例34:演示Spring AOP用法
12.4 總結
12.5 習題
第 13章 Spring MVC及常用MediaType
3.1 Spring MVC簡介
13.1.1 MVC是三層架構嗎
13.1.2 Spring MVC中的自動配置
13.2 實例35:JSON類型的處理
13.2.1 控制器及實體
13.2.2 返回JSON類型
13.2.3 Web API常用調試方式
13.3 實例36:XML類型的處理
13.3.1 返回XML類型
13.3.2 第三方XML框架
13.4 實例37:文件上傳的處理
13.4.1 MultipartResolver
13.4.2 通過Form表單來上傳文件的例子
13.4.3 RESTful API的文件上傳
13.5 總結
13.6 習題
第 14章 數(shù)據(jù)持久化
14.1 JPA概述
14.1.1 JPA的產生背景
14.1.2 實體(Entity)
14.1.3 實體中的主鍵
14.1.4 實體間的關系
14.1.5 實體中的可嵌入類
14.1.6 實體繼承
14.1.7 管理實體
14.1.8 查詢實體
14.1.9 數(shù)據(jù)庫模式創(chuàng)建
14.2 Spring Data JPA
14.2.1 Spring Data是什么
14.2.2 Spring Data JPA特性
14.2.3 如何使用Spring Data JPA
14.2.4 核心概念
14.2.5 查詢方法
14.2.6 定義資源庫的接口
14.2.7 定義查詢方法
14.2.8 創(chuàng)建資源實例
14.2.9 Spring Data自定義實現(xiàn)
14.4 實例39:數(shù)據(jù)持久化實戰(zhàn)
14.4.1 定義實體
14.4.2 添加資源庫
14.4.3 編寫測試用例
14.4.4 使用MySQL數(shù)據(jù)庫
14.4.5 運行測試查看效果
14.5 總結
14.6 習題
第 15章 集成Spring Security
15.1 基于角色的權限管理
15.1.1 什么是角色
15.1.2 基于角色的訪問控制
15.1.3 哪種方式更好
15.2 Spring Security概述
15.2.1 Spring Security的認證模型
15.2.2 Spring Security的安裝
15.2.3 模塊
15.2.4 Spring Security 5新特性及高級功能
15.3 實例40:Spring Security與Spring Boot集成
15.3.1 初始化Spring Boot項目原型
15.3.2 添加Web支持
15.3.3 編寫代碼
15.3.4 運行
15.4 總結
15.5 習題
第 16章 實戰(zhàn)1:基于Vue.js和Spring Boot的互聯(lián)網應用——“新聞頭條”
16.1 應用概述
16.1.1 “新聞頭條”的核心功能
16.1.2 初始化數(shù)據(jù)庫
16.2 模型設計
16.2.1 用戶模型設計
16.2.2 新聞模型設計
16.3 接口設計
16.4 權限管理
16.5 總結
16.6 習題
第 17章 實戰(zhàn)2:前端UI客戶端應用
17.1 前端UI設計
17.1.1 首頁UI設計
17.1.2 新聞詳情UI設計
17.2 實現(xiàn)UI原型
17.2.1 初始化news-ui
17.2.2 添加Naive UI
17.2.3 創(chuàng)建組件
17.2.4 實現(xiàn)新聞列表原型設計
17.2.5 實現(xiàn)新聞詳情原型設計
17.3 實現(xiàn)路由器
17.3.1 理解路由的概念
17.3.2 使用路由插件
17.3.3 創(chuàng)建路由
17.3.4 如何使用路由
17.3.5 修改新聞列表組件
17.3.6 新聞詳情組件增加返回按鈕事件處理
17.3.7 運行應用
17.4 總結
17.5 習題
第 18章 實戰(zhàn)3:后端服務器應用
18.1 初始化后臺應用
18.1.1 初始化應用
18.1.2 編寫后臺“Hello World”應用
18.1.3 自定義端口號
18.1.4 創(chuàng)建安全配置類SecurityConfig
18.1.5 運行“Hello World”應用
18.2 初步實現(xiàn)登錄認證
18.2.1 創(chuàng)建后臺管理組件
18.2.2 添加組件到路由器
18.2.3 注入HTTP客戶端
18.2.4 客戶端訪問后臺接口
18.2.5 修改后臺安全配置
18.4 實現(xiàn)新聞列表展示
18.4.1 后臺實現(xiàn)新聞列表查詢的接口
18.4.2 實現(xiàn)客戶端訪問新聞列表REST接口
18.4.3 運行應用
18.5 實現(xiàn)新聞詳情展示
18.5.1 在后服務器實現(xiàn)查詢新聞詳情的接口
18.5.2 實現(xiàn)客戶端訪問新聞詳情REST接口
18.5.3 運行應用
18.6 實現(xiàn)認證信息存儲及讀取
18.6.1 實現(xiàn)認證信息的存儲
18.6.2 實現(xiàn)認證信息的讀取
18.6.3 改造認證方法
18.7 總結
18.8 習題
第 19章 實戰(zhàn)4:使用Nginx實現(xiàn)高可用
19.1 Nginx概述
19.1.1 Nginx特性
19.1.2 下載、安裝、運行Nginx
19.1.3 安裝、運行Nginx
19.1.4 驗證安裝
19.1.5 常用命令
19.2 部署前端應用
19.2.1 編譯前端應用
19.2.2 部署前端應用編譯文件
19.2.3 配置Nginx
19.3 實現(xiàn)負載均衡及高可用
19.3.1 配置負載均衡
19.3.2 負載均衡常用算法
2. 權重
3. ip_hash
4. fair
5. url_hash
19.3.3 實現(xiàn)后臺服務的高可用
19.3.4 運行
19.4 總結
19.5 習題