輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyB
內容描述
在Java Web開發的歷史中,經歷了從重量級EJB組件到輕量級Java Web開發的轉變。在輕量級Java Web開發中,又經歷了從流行的SSH(Struts+Spring+Hibernate)框架組合到更輕巧的SSM(Spring+SpringMVC+MyBatis)框架組合的演化。近年來,隨著Spring Boot框架的發布,基於Spring+Spring Boot+MyBatis的Java Web整合開發方式,憑借其更高的開發效率和更好的擴展性,受到開發者的一致推崇。
《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》主要講解了Spring、Spring Boot和MyBatis框架的基礎知識,以及它們之間的整合流程。另外,還介紹了設計模式的相關知識,使讀者不僅會使用框架,也能瞭解框架設計的思想和實現原理。全書共8章,可分為3部分:第1部分(第1~2章),概述性介紹了Java Web開發的基礎知識及一些常見的設計模式;第2部分(第3~6章)是《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》的核心,詳細介紹了Spring、Spring Boot和MyBatis三大框架的詳細使用流程,並通過空氣質量監測平臺案例介紹了它們在實際應用中的整合過程及註意事項;第3部分(第7~8章),主要介紹實際項目中所採用的工程化方法和經驗,以及Java Web開發中一些常見問題的分析和解決方案,希望讀者在開發中少走彎路,提高效率。
《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》介紹的Spring框架的版本為5.2.0.RELEASE,Spring Boot框架的版本為2.0.4.RELEASE,MyBatis框架的版本為3.5.1。因為不同版本相互整合時可能會存在一些兼容性問題,所以若以《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》作為學習Java EE框架的教程,或是運行本教程附帶源代碼時,最好選擇和《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》一樣的版本。
《輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyBatis》豐富的習題設置和工程化經驗總結,不僅能滿足高等院校電腦專業的授課要求,對實際進行Java Web開發的工程師也有較高參考價值。
目錄大綱
第1章 Java Web概述 1
1.1 Java語言概述 2
1.2 Java環境介紹 3
1.2.1 Java運行環境 4
1.2.2 集成開發環境 8
1.2.3 Lombok插件 11
1.2.4 Git 22
1.3 Java Web開發概述 27
1.3.1 Java Web項目的基本結構 28
1.3.2 輕量級Java Web開發概述 31
1.3.3 經典Java Web開發概述 32
1.3.4 常用Java Web服務器 32
1.4 項目構建工具Maven簡介 33
1.4.1 概述 34
1.4.2 下載和安裝 34
1.4.3 配置方式 34
1.4.4 Maven使用 35
1.5 Servlet和JSP簡介 44
1.5.1 Servlet簡介 44
1.5.2 JSP簡介 47
1.6 MySQL數據庫簡介 49
1.6.1 關系型數據庫簡介 49
1.6.2 Windows系統下安裝MySQL 50
1.6.3 Linux系統下安裝MySQL 51
1.7 數據交換協議 53
1.7.1 XML 53
1.7.2 JSON 55
1.8 本章小結 55
1.9 習題 56
1.9.1 單選題 56
1.9.2 填空題 57
1.9.3 簡答題 57
1.10 實踐環節 57
第2章 設計模式 59
2.1 分類和原則 60
2.2 常用設計模式 61
2.2.1 單例模式 62
2.2.2 工廠模式 63
2.2.3 代理模式 71
2.2.4 命令模式 73
2.2.5 策略模式 75
2.2.6 MVC模式 78
2.3 框架的基礎:反射與動態代理 80
2.3.1 反射機制 80
2.3.2 動態代理 82
2.4 本章小結 85
2.5 習題 86
2.5.1 單選題 86
2.5.2 填空題 87
2.5.3 簡答題 87
2.6 實踐環節 88
第3章 Spring框架 89
3.1 概述 90
3.1.1 Spring框架的組成結構 90
3.1.2 Spring框架的優勢 92
3.2 基本用法 93
3.2.1 Spring的使用流程 93
3.2.2 Spring的配置文件 94
3.2.3 Spring的依賴註入 95
3.2.4 Spring的註釋配置 100
3.3 高級用法 101
3.3.1 Spring的後處理器 101
3.3.2 Spring的資源訪問 104
3.3.3 Spring的AOP機制 107
3.3.4 Spring的事務管理 111
3.3.5 Spring的事件機制 114
3.4 本章小結 115
3.5 習題 115
3.5.1 單選題 115
3.5.2 填空題 117
3.5.3 簡答題 117
3.6 實踐環節 118
第4章 Spring Boot框架 119
4.1 概述 120
4.2 Spring Boot初探 121
4.2.1 第一個Spring Boot程序 121
4.2.2 接口協議:RESTFUL 124
4.2.3 接口文檔自動生成 125
4.2.4 熱重啟 127
4.2.5 配置文件說明 128
4.3 基本用法 129
4.3.1 接口數據校驗 129
4.3.2 文件上傳和下載 131
4.3.3 定時任務 134
4.3.4 攔截器 136
4.3.5 緩存技術 138
4.3.6 模板引擎 139
4.3.7 異常處理 141
4.3.8 多環境配置 144
4.3.9 項目部署 145
4.4 高級用法 148
4.4.1 運行時監控 148
4.4.2 自定義starter 152
4.5 自定義Spring Boot 154
4.5.1 定義註解 155
4.5.2 實現入口servlet 156
4.5.3 創建業務實現類 160
4.5.4 配置tomcat 160
4.6 本章小結 162
4.7 習題 162
4.7.1 單選題 162
4.7.2 填空題 163
4.7.3 簡答題 164
4.8 實踐環節 164
第5章 MyBatis框架 165
5.1 概述 166
5.1.1 MyBatis簡介 166
5.1.2 JDBC操作回顧 167
5.2 MyBatis初探 168
5.3 基本用法 172
5.3.1 xml映射文件 172
5.3.2 動態SQL語句 174
5.3.3 mapper 180
5.3.4 MyBatis的xml配置 180
5.3.5 日誌 183
5.4 高級用法 183
5.4.1 代碼生成 183
5.4.2 插件開發 187
5.5 Eclipse的mybatis插件 189
5.5.1 插件安裝 189
5.5.2 插件使用 190
5.6 自定義MyBatis 195
5.6.1 創建測試方法 195
5.6.2 創建MappedStatement 197
5.6.3 創建配置類存儲 197
5.6.4 創建SqlSession 197
5.6.5 創建執行器 199
5.6.6 創建動態代理類 200
5.6.7 創建語句與結果集存儲配置類 201
5.6.8 結果測試 202
5.6.9 其他開源增強框架 203
5.7 本章小結 204
5.8 習題 204
5.8.1 單選題 204
5.8.2 填空題 206
5.8.3 簡答題 206
5.9 實踐環節 207
第6章 綜合案例:空氣質量監測平臺 208
6.1 項目背景 209
6.2 項目需求 209
6.3 技術選型 211
6.4 系統設計及實現 211
6.4.1 頁面設計 211
6.4.2 數據庫設計 218
6.4.3 代碼生成 220
6.4.4 接口設計 224
6.4.5 主要功能實現 233
6.4.6 Socket告警推送 244
6.5 本章小結 247
第7章 工程化實踐淺談 248
7.1 關於分佈式 249
7.1.1 Nginx負載均衡 249
7.1.2 Nacos註冊中心 252
7.1.3 Dubbo框架簡介 254
7.1.4 Spring cloud 257
7.2 關於壓力測試 261
7.2.1 JMeter介紹 261
7.2.2 簡單HTTP請求配置 264
7.3 自動化部署之Jenkins 265
7.3.1 下載及運行 266
7.3.2 插件安裝 267
7.4 本章小結 273
第8章 常見問題匯總 274
8.1 Linux上Tomcat啟動速度慢 275
8.2 Linux上設置Spring Boot項目後台啟動 276
8.3 Web應用中long型數據精度丟失 276
8.4 Content-Type接口傳參的內容類型指定對應 277
8.5 啟動程序埠被占用 277
8.6 部署啟動提示版本問題 278
8.7 git導入開源項目速度太慢 278
8.8 開發過程中提示內存不夠 279
8.9 生產環境如何關閉swagger接口文檔頁面 279
8.10 @RequestBody註解在基本類型上傳輸鍵值對報錯 280
8.11 MyBatis的xml文件無法映射 281
參考文獻 282