內容簡介
本書講解當前Java EE企業級開發的熱門框架Spring Boot,並結合實際開發場景,介紹如何使用Spring Boot整合第三方框架進行Web開發。全書共10章,其中,第1~2章介紹Spring Boot的相關概念、Spring Boot核心配置與註解;第3~9章介紹Spring Boot開發Web套用的常見技術,包括數據訪問、視圖技術、實現Web的常用功能、快取管理、安全管理、訊息服務、任務管理。第10章結合前面所學的知識,員說轎嬸開發一個綜合項目——個人部落格系統,希望讀者通過項目實戰,深刻體會使用Spring Boot框架開發Web套用的便捷之處。
本書附有配套視頻、原始碼、習題、教學PPT、教學設計等資源;另外,為了幫助初學者更好地學習本書講解的內容,我們還提供了線上答疑服務,希望可以幫助更多的讀者。
本書既可作為高等院校本、專科計算機相關專業的教材,也可作為社會培訓教材,是一本適合讀者自學和參考的讀物。
圖書目錄
第 1章 Spring Boot開發入門 1
1.1 Spring Boot概述 2
1.1.1 Spring Boot簡介 2
1.1.2 Spring Boot的優點 3
1.2 Spring Boot入門程式 4
1.2.1 環境準備 4
1.2.2 使用Maven方式構建Spring Boot
項目 4
1.2.3 使用Spring Initializr方式構建
Spring Boot項目 9
1.3 單元測試與熱部署 13
1.3.1 單元測試 13
1.3.2 熱部署 14
1.4 Spring Boot原理分析 16
1.4.1 Spring Boot依賴管理 16
1.4.2 Spring Boot自動配置 19
1.4.3 Spring Boot執行流程 22
1.5 本章小結頸漏 才格譽26
1.6 習題 26
第 2章 Spring Boot核心配置與
註解 28
2.1 全局配置檔案 29
2.1.1 application.properties配置檔案 29
2.1.2 application.yaml配置檔案 32
2.2 配置檔案屬性值的注入 34
2.2.1 使用@ConfigurationProperties注入
屬性 34
2.2.2 使用@Value注入屬性 34
2.2.3 兩種註解對比分析 36
2.3 Spring Boot自定義槓放盛配置 38
2.3.1 使用@PropertySource載入配置
檔案 38
2.3.2 使用@ImportResource載入XML
配置檔案 39
2.3.3 使用@Configuration編寫自定義
配置類 41
2.4 Profile多環境配置 42
2.4.1 使用Profile檔案進行多環境
配置 42
2.4.2 使用@Profile註解進行多環境
配置 43
2.5 隨機值設定以及參數間引用 46
2.6 本章小結 47
2.7 習題 47
第3章 Spring Boot數據訪問 49
3.1 Spring Boot數據訪問概述 50
3.2 Spring Boot整合MyBatis 50
3.2.1 基礎環境搭建 50
3.2.2 使用註解的方式整合MyBatis 54
3.2.3 使用配置檔案的方式整合
MyBatis 56
3.3 Spring Boot整合JPA 58
3.3.1 Spring Data JPA介紹 58
3.3.2 使用Spring Boot整合JPA 62
3.4 Spring Boot整狼跨狼合Redis 65
3.4.1 Redis介紹 65
3.4.2 使用Spring Boot整合Redis 67
3.5 本章小結 71
3.6 習題 71
第4章 Spring Boot視白櫻煉遙圖尋紙項技術 73
4.1 Spring Boot支持的視圖
技術 74
4.2 Thymeleaf基本語法 75
4.2.1 常用標籤 75
4.2.2 標準表達式 77
4.3 Thymeleaf基本使用 79
4.3.1 Thymeleaf模板基本配置 79
4.3.2 靜態資源的訪問 79
4.4 使用Thymeleaf完成數據的
頁面展示 79
4.5 使用Thymeleaf配置國際化
頁面 82
4.6 本章小結 87
4.7 習題 87
第5章 Spring Boot實現Web
的常用功能 89
5.1 Spring MVC的整合支持 90
5.1.1 Spring MVC自動配置介紹 90
5.1.2 Spring MVC功能擴展實現 90
5.2 Spring Boot整合Servlet
三大組件 94
5.2.1 組件註冊整合Servlet三大組件 94
5.2.2 路徑掃描整合Servlet三大組件 98
5.3 檔案上傳與下載 100
5.3.1 檔案上傳 100
5.3.2 檔案下載 104
5.4 Spring Boot套用的打包和
部署 107
5.4.1 Jar包方式打包部署 107
5.4.2 War包方式打包部署 111
5.5 本章小結 113
5.6 習題 113
第6章 Spring Boot快取
管理 115
6.1 Spring Boot默認快取管理 116
6.1.1 基礎環境搭建 116
6.1.2 Spring Boot默認快取體驗 119
6.2 Spring Boot快取註解
介紹 120
實現 123
6.3.1 Spring Boot支持的快取組件 123
6.3.2 基於註解的Redis快取實現 124
6.3.3 基於API的Redis快取實現 128
6.4 自定義Redis快取序列化
機制 131
6.4.1 自定義RedisTemplate 131
6.4.2 自定義RedisCacheManager 135
6.5 本章小結 137
6.6 習題 137
第7章 Spring Boot安全管理 139
7.1 Spring Security介紹 140
7.2 Spring Security快速入門 140
7.2.1 基礎環境搭建 140
7.2.2 開啟安全管理效果測試 142
7.3 MVC Security安全配置
介紹 144
7.4 自定義用戶認證 145
7.4.1 記憶體身份認證 145
7.4.2 JDBC身份認證 147
7.4.3 UserDetailsService身份認證 150
7.5 自定義用戶授權管理 153
7.5.1 自定義用戶訪問控制 153
7.5.2 自定義用戶登錄 156
7.5.3 自定義用戶退出 159
7.5.4 登錄用戶信息獲取 161
7.5.5 記住我功能 163
7.5.6 CSRF防護功能 168
7.6 Security管理前端頁面 173
7.7 本章小結 175
7.8 習題 175
第8章 Spring Boot訊息
服務 177
8.1 訊息服務概述 178
8.1.1 為什麼要使用訊息服務 178
8.1.2 常用訊息中間件介紹 180
8.2 RabbitMQ訊息中間件 181
8.2.1 RabbitMQ簡介 181
8.2.2 RabbitMQ工作模式介紹 181
8.3 RabbitMQ安裝以及整合環境
搭建 183
8.3.1 安裝RabbitMQ 183
8.3.2 Spring Boot整合RabbitMQ環境
搭建 184
8.4 Spring Boot與RabbitMQ整合
實現 185
8.4.1 Publish/Subscribe(發布訂閱模式) 185
8.4.2 Routing(路由模式) 193
8.4.3 Topics(通配符模式) 195
8.5 本章小結 197
8.6 習題 197
第9章 Spring Boot任務管理 199
9.1 異步任務 200
9.1.1 無返回值異步任務調用 200
9.1.2 有返回值異步任務調用 202
9.2 定時任務 203
9.2.1 定時任務介紹 204
9.2.2 定時任務實現 206
9.3 郵件任務 208
9.3.1 傳送純文本郵件 208
9.3.2 傳送帶附屬檔案和圖片的郵件 210
9.3.3 傳送模板郵件 213
9.4 本章小結 215
9.5 習題 215
第 10章 Spring Boot綜合項目
實戰——個人部落格
系統 217
10.1 系統概述 218
10.1.1 系統功能介紹 218
10.1.2 項目效果預覽 218
10.2 項目設計 220
10.2.1 系統開發及運行環境 220
10.2.2 檔案組織結構 220
10.3 系統環境搭建 223
10.3.1 準備資料庫資源 223
10.3.2 準備項目環境 224
10.4 前台管理模組 229
10.4.1 文章分頁展示 229
10.4.2 文章詳情查看 238
10.4.3 文章評論管理 244
10.5 後台管理模組 249
10.5.1 數據展示 249
10.5.2 文章發布 252
10.5.3 文章修改 256
10.5.4 文章刪除 258
10.6 用戶登錄控制 261
10.7 定時郵件傳送 267
10.8 本章小結 270
2.3.1 使用@PropertySource載入配置
檔案 38
2.3.2 使用@ImportResource載入XML
配置檔案 39
2.3.3 使用@Configuration編寫自定義
配置類 41
2.4 Profile多環境配置 42
2.4.1 使用Profile檔案進行多環境
配置 42
2.4.2 使用@Profile註解進行多環境
配置 43
2.5 隨機值設定以及參數間引用 46
2.6 本章小結 47
2.7 習題 47
第3章 Spring Boot數據訪問 49
3.1 Spring Boot數據訪問概述 50
3.2 Spring Boot整合MyBatis 50
3.2.1 基礎環境搭建 50
3.2.2 使用註解的方式整合MyBatis 54
3.2.3 使用配置檔案的方式整合
MyBatis 56
3.3 Spring Boot整合JPA 58
3.3.1 Spring Data JPA介紹 58
3.3.2 使用Spring Boot整合JPA 62
3.4 Spring Boot整合Redis 65
3.4.1 Redis介紹 65
3.4.2 使用Spring Boot整合Redis 67
3.5 本章小結 71
3.6 習題 71
第4章 Spring Boot視圖技術 73
4.1 Spring Boot支持的視圖
技術 74
4.2 Thymeleaf基本語法 75
4.2.1 常用標籤 75
4.2.2 標準表達式 77
4.3 Thymeleaf基本使用 79
4.3.1 Thymeleaf模板基本配置 79
4.3.2 靜態資源的訪問 79
4.4 使用Thymeleaf完成數據的
頁面展示 79
4.5 使用Thymeleaf配置國際化
頁面 82
4.6 本章小結 87
4.7 習題 87
第5章 Spring Boot實現Web
的常用功能 89
5.1 Spring MVC的整合支持 90
5.1.1 Spring MVC自動配置介紹 90
5.1.2 Spring MVC功能擴展實現 90
5.2 Spring Boot整合Servlet
三大組件 94
5.2.1 組件註冊整合Servlet三大組件 94
5.2.2 路徑掃描整合Servlet三大組件 98
5.3 檔案上傳與下載 100
5.3.1 檔案上傳 100
5.3.2 檔案下載 104
5.4 Spring Boot套用的打包和
部署 107
5.4.1 Jar包方式打包部署 107
5.4.2 War包方式打包部署 111
5.5 本章小結 113
5.6 習題 113
第6章 Spring Boot快取
管理 115
6.1 Spring Boot默認快取管理 116
6.1.1 基礎環境搭建 116
6.1.2 Spring Boot默認快取體驗 119
6.2 Spring Boot快取註解
介紹 120
實現 123
6.3.1 Spring Boot支持的快取組件 123
6.3.2 基於註解的Redis快取實現 124
6.3.3 基於API的Redis快取實現 128
6.4 自定義Redis快取序列化
機制 131
6.4.1 自定義RedisTemplate 131
6.4.2 自定義RedisCacheManager 135
6.5 本章小結 137
6.6 習題 137
第7章 Spring Boot安全管理 139
7.1 Spring Security介紹 140
7.2 Spring Security快速入門 140
7.2.1 基礎環境搭建 140
7.2.2 開啟安全管理效果測試 142
7.3 MVC Security安全配置
介紹 144
7.4 自定義用戶認證 145
7.4.1 記憶體身份認證 145
7.4.2 JDBC身份認證 147
7.4.3 UserDetailsService身份認證 150
7.5 自定義用戶授權管理 153
7.5.1 自定義用戶訪問控制 153
7.5.2 自定義用戶登錄 156
7.5.3 自定義用戶退出 159
7.5.4 登錄用戶信息獲取 161
7.5.5 記住我功能 163
7.5.6 CSRF防護功能 168
7.6 Security管理前端頁面 173
7.7 本章小結 175
7.8 習題 175
第8章 Spring Boot訊息
服務 177
8.1 訊息服務概述 178
8.1.1 為什麼要使用訊息服務 178
8.1.2 常用訊息中間件介紹 180
8.2 RabbitMQ訊息中間件 181
8.2.1 RabbitMQ簡介 181
8.2.2 RabbitMQ工作模式介紹 181
8.3 RabbitMQ安裝以及整合環境
搭建 183
8.3.1 安裝RabbitMQ 183
8.3.2 Spring Boot整合RabbitMQ環境
搭建 184
8.4 Spring Boot與RabbitMQ整合
實現 185
8.4.1 Publish/Subscribe(發布訂閱模式) 185
8.4.2 Routing(路由模式) 193
8.4.3 Topics(通配符模式) 195
8.5 本章小結 197
8.6 習題 197
第9章 Spring Boot任務管理 199
9.1 異步任務 200
9.1.1 無返回值異步任務調用 200
9.1.2 有返回值異步任務調用 202
9.2 定時任務 203
9.2.1 定時任務介紹 204
9.2.2 定時任務實現 206
9.3 郵件任務 208
9.3.1 傳送純文本郵件 208
9.3.2 傳送帶附屬檔案和圖片的郵件 210
9.3.3 傳送模板郵件 213
9.4 本章小結 215
9.5 習題 215
第 10章 Spring Boot綜合項目
實戰——個人部落格
系統 217
10.1 系統概述 218
10.1.1 系統功能介紹 218
10.1.2 項目效果預覽 218
10.2 項目設計 220
10.2.1 系統開發及運行環境 220
10.2.2 檔案組織結構 220
10.3 系統環境搭建 223
10.3.1 準備資料庫資源 223
10.3.2 準備項目環境 224
10.4 前台管理模組 229
10.4.1 文章分頁展示 229
10.4.2 文章詳情查看 238
10.4.3 文章評論管理 244
10.5 後台管理模組 249
10.5.1 數據展示 249
10.5.2 文章發布 252
10.5.3 文章修改 256
10.5.4 文章刪除 258
10.6 用戶登錄控制 261
10.7 定時郵件傳送 267