Java EE的輕量級開發(fā)利劍:Spring Boot實戰(zhàn)
定 價:109 元
- 作者:王波
- 出版時間:2022/5/1
- ISBN:9787115577658
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312.8
- 頁碼:384
- 紙張:
- 版次:01
- 開本:16開
本書以Java EE的實踐為主題,系統(tǒng)闡述Spring Boot、Spring MVC、Spring Cloud等企業(yè)級領域內(nèi)的熱門技術。本書講解相關技術框架的核心知識,并結(jié)合汽車管理系統(tǒng)等實戰(zhàn)項目,把Java EE領域內(nèi)流行的SSH、SSM、Spring Boot、Spring Cloud、MyBatis和JPA等框架整合起來,再從代碼層面講述Activiti、Kafka、Redis、Docker、Maven、WebService和POI等技術。通過本書深入淺出的講解,讀者在學習Java架構(gòu)師常備專業(yè)技能的同時,還可以學習項目開發(fā)的整個過程,真正意義上做到Spring Boot從入門到精通。
本書適合Java EE領域的開發(fā)人員閱讀。閱讀本書,讀者可以學習目前流行的Java開發(fā)技術,力爭在短時間內(nèi)掌握Spring Boot核心技術,成為Java架構(gòu)師,走向自己職業(yè)生涯的輝煌。
Spring Boot是Spring家族具有代表性的產(chǎn)品之一,它簡化了框架配置,讓Web應用的部署變得非常簡單。
本書從宏觀層面上梳理Spring Boot的知識體系,系統(tǒng)地講解環(huán)境搭建、依賴注入、面向切面編程、注解、SSH框架、Spring MVC、框架集成、視圖技術、數(shù)據(jù)庫、Apache Shiro安全框架、程序部署、微服務等Spring Boot的核心知識點,并通過一個完整的“汽車管理系統(tǒng)”實戰(zhàn)項目,將Spring Boot框架技術應用到實際的項目開發(fā)中。
本書的講解由淺入深,搭配企業(yè)級的代碼示例,能夠幫助讀者掌握Spring Boot核心技術,成長為出色的全棧工程師、架構(gòu)師。
王波,軟件架構(gòu)師。曾任職于華為公司,擅長用Java進行互聯(lián)網(wǎng)應用的開發(fā)和實踐,擁有10年以上企業(yè)開發(fā)經(jīng)驗,對Spring Boot、Spring Cloud微服務等熱門技術有深入的研究,熱衷于編程技術的開源,著有書籍《Java架構(gòu)師指南》,長期在博客撰寫技術專欄。
第 1章 Spring Boot概述 1
1.1 Spring家族介紹 1
1.2 Spring Boot與MVC模式 3
1.2.1 Spring Boot的優(yōu)勢 3
1.2.2 MVC模式介紹 4
1.3 Spring基礎環(huán)境搭建 8
1.3.1 Java介紹 8
1.3.2 JDK環(huán)境配置 12
1.3.3 Maven環(huán)境配置 14
1.3.4 構(gòu)建Spring Boot項目 15
1.4 EJB編程快速入門 18
1.4.1 Hello EJB程序 19
1.4.2 helloSpring程序 23
1.5 安裝Tomcat服務器 28
1.5.1 MyEclipse項目發(fā)布 30
1.5.2 Eclipse Neon項目發(fā)布 31
1.5.3 多個Tomcat的部署方法 34
1.6 小結(jié) 35
第 2章 Spring Boot必備基礎知識 36
2.1 依賴注入 36
2.1.1 設值注入方式 37
2.1.2 構(gòu)造函數(shù)注入方式 38
2.1.3 注解注入方式 39
2.2 面向切面編程 42
2.3 注解 49
2.3.1 重寫與重載 49
2.3.2 其他注解 50
2.4 Servlet與CGI編程 52
2.4.1 CGI基本概念 53
2.4.2 CGI流程 53
2.4.3 CGI編程實例 53
2.5 Servlet服務器端編程 55
2.5.1 Servlet基本概念 55
2.5.2 Servlet編程實例 56
2.5.3 Servlet編程知識點 58
2.6 Java數(shù)據(jù)類型 59
2.6.1 基本類型 59
2.6.2 引用類型 65
2.6.3 開箱即用 66
2.7 Java類與接口 67
2.7.1 類與對象 67
2.7.2 抽象類與接口 70
2.8 數(shù)組與集合 72
2.8.1 數(shù)組 72
2.8.2 集合 77
2.8.3 Map 85
2.8.4 Iterator 87
2.9 多線程編程 89
2.9.1 多線程概念 89
2.9.2 多線程創(chuàng)建 90
2.9.3 多線程調(diào)度 91
2.9.4 多線程同步 92
2.9.5 線程池應用 94
2.10 工作流 96
2.10.1 工作流搭建 97
2.10.2 工作流開發(fā) 99
2.11 探析JVM的秘密 103
2.11.1 JVM簡介 104
2.11.2 JVM的構(gòu)成 104
2.11.3 JVM加載類 105
2.11.4 內(nèi)存回收 105
2.12 小結(jié) 107
第3章 Struts Spring Hibernate(SSH)
108
3.1 SSH框架概述 108
3.1.1 SSH框架特點 108
3.1.2 SSH框架搭建 109
3.2 框架核心 111
3.2.1 Struts 2執(zhí)行過程 112
3.2.2 FilterDispatcher 113
3.2.3 HttpServletRequest 115
3.2.4 HttpServletResponse 116
3.2.5 XWork攔截器 117
3.3 框架集成 119
3.3.1 Struts 2集成 120
3.3.2 Spring 3集成 122
3.3.3 Hibernate集成 125
3.3.4 前端插件引入 127
3.3.5 事務配置 127
3.4 權(quán)限管理 129
3.4.1 業(yè)務設計 130
3.4.2 程序設計 131
3.4.3 數(shù)據(jù)庫設計 141
3.5 架構(gòu)設計 143
3.5.1 邏輯層 144
3.5.2 業(yè)務層 148
3.5.3 持久層 149
3.5.4 架構(gòu)優(yōu)化 152
3.5.5 架構(gòu)拓展 153
3.5.6 Hibernate查詢 163
3.5.7 配置文件 167
3.6 數(shù)據(jù)導出 181
3.6.1 POI 182
3.6.2 CSV 190
3.6.3 導出功能XML文件配置 197
3.7 加入緩存機制 198
3.7.1 Ehcache搭建 198
3.7.2 Ehcache使用 201
3.8 解決并發(fā)問題 202
3.8.1 連接池 203
3.8.2 Nginx 203
3.9 小結(jié) 207
第4章 Spring MVC 209
4.1 Spring MVC概述 209
4.1.1 Spring MVC框架特點 209
4.1.2 Spring MVC框架搭建 210
4.2 框架核心 211
4.2.1 Spring MVC執(zhí)行過程 212
4.2.2 DispatcherServlet 213
4.2.3 HandlerMapping 214
4.2.4 HandlerAdapter 214
4.2.5 ViewResolver 215
4.3 數(shù)據(jù)綁定與標簽 216
4.3.1 數(shù)據(jù)綁定概述 216
4.3.2 input標簽 216
4.3.3 password標簽 217
4.3.4 hidden標簽 217
4.3.5 textarea標簽 218
4.3.6 select標簽 218
4.3.7 checkboxes標簽 219
4.4 框架集成 220
4.4.1 Spring MVC集成 220
4.4.2 MyBatis集成 221
4.4.3 事務配置 221
4.5 架構(gòu)設計 224
4.5.1 邏輯層 224
4.5.2 業(yè)務層 227
4.5.3 持久層 228
4.5.4 配置文件 230
4.6 小結(jié) 240
第5章 Spring Boot核心技術 241
5.1 Spring Boot概述 241
5.1.1 Spring Boot框架特點 241
5.1.2 Spring Boot框架搭建 241
5.2 框架核心 243
5.2.1 Spring Boot執(zhí)行過程 243
5.2.2 SpringApplicationRunListener
244
5.2.3 ApplicationContextInitializer
245
5.3 框架集成 246
5.3.1 Spring Boot項目構(gòu)建 246
5.3.2 Application配置文件 249
5.4 Spring Boot整合JPA 252
5.4.1 Spring Data JPA介紹 252
5.4.2 JPA事務與DDL操作 253
5.4.3 汽車品牌管理需求 255
5.5 視圖技術 268
5.5.1 FreeMarker 268
5.5.2 Thymeleaf 272
5.6 小結(jié) 274
第6章 數(shù)據(jù)庫 275
6.1 MySQL 275
6.1.1 命令 275
6.1.2 profiling 279
6.1.3 SQLyog 282
6.1.4 函數(shù) 285
6.1.5 游標 286
6.1.6 存儲過程 287
6.2 Oracle 288
6.2.1 命令 288
6.2.2 PLSQL 292
6.3 NoSQL 294
6.4 數(shù)據(jù)庫的事務 298
6.4.1 事務的特性 298
6.4.2 隔離級別 298
6.4.3 傳播行為 299
6.5 Redis快速入門 300
6.5.1 基礎操作 300
6.5.2 備份與恢復 302
6.6 數(shù)據(jù)庫加鎖 303
6.6.1 表級鎖定 303
6.6.2 行級鎖定 304
6.7 數(shù)據(jù)庫鎖與事務 305
6.7.1 悲觀鎖 305
6.7.2 樂觀鎖 305
6.7.3 分布式事務 305
6.8 小結(jié) 307
第7章 Apache Shiro安全框架 308
7.1 快速入門 308
7.1.1 安裝部署 308
7.1.2 安全驗證 310
7.1.3 Subject 314
7.1.4 AuthorizingRealm 316
7.1.5 細粒度權(quán)限管理 318
7.2 單點登錄 318
7.2.1 單點登錄介紹 318
7.2.2 單點登錄實現(xiàn) 319
7.3 WebService 321
7.3.1 服務器端實現(xiàn) 321
7.3.2 客戶端實現(xiàn) 323
7.4 小結(jié) 325
第8章 Spring Boot程序部署 326
8.1 打包 326
8.1.1 JAR包 326
8.1.2 WAR包 327
8.2 Docker部署 328
8.2.1 Docker基礎 328
8.2.2 Docker指令 328
8.3 Jenkins自動化部署 330
8.3.1 部署介紹 330
8.3.2 搭配使用 331
8.4 Swagger UI與阿里云部署 333
8.4.1 Swagger UI開發(fā)實例 333
8.4.2 阿里云項目部署 338
8.5 小結(jié) 340
第9章 Spring Cloud微服務 341
9.1 微服務架構(gòu) 341
9.1.1 單機 341
9.1.2 集群 342
9.1.3 微服務 342
9.2 微服務實戰(zhàn) 348
9.2.1 Eureka 348
9.2.2 RestTemplate 353
9.2.3 Ribbon 358
9.2.4 Hystrix 360
9.2.5 Zuul 364
9.3 小結(jié) 367
第 10章 項目實戰(zhàn):汽車管理系統(tǒng) 368
10.1 系統(tǒng)概述 368
10.1.1 功能介紹 368
10.1.2 需求分析 369
10.2 數(shù)據(jù)庫設計 370
10.2.1 業(yè)務分析 370
10.2.2 表單設計 370
10.3 后臺開發(fā) 374
10.3.1 短消息 374
10.3.2 授權(quán)操作 382
10.4 小結(jié) 384