-
>
決戰(zhàn)行測5000題(言語理解與表達(dá))
-
>
軟件性能測試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
深度學(xué)習(xí)
-
>
Unreal Engine 4藍(lán)圖完全學(xué)習(xí)教程
-
>
深入理解計(jì)算機(jī)系統(tǒng)-原書第3版
-
>
Word/Excel PPT 2013辦公應(yīng)用從入門到精通-(附贈(zèng)1DVD.含語音視頻教學(xué)+辦公模板+PDF電子書)
SPRING 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn) 版權(quán)信息
- ISBN:9787302531029
- 條形碼:9787302531029 ; 978-7-302-53102-9
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>>
SPRING 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn) 本書特色
Spring框架是為了降低解決企業(yè)系統(tǒng)開發(fā)的復(fù)雜度而產(chǎn)生的,掌握并學(xué)會(huì)使用Spring框架進(jìn)行項(xiàng)目開發(fā),是Java開發(fā)人員**技能之一,本書從企業(yè)應(yīng)用開發(fā)的角度出發(fā),深入淺出地講解了Spring 5的新特性和Spring集成開發(fā)技術(shù)。全書共19章,第1章~第3章主要講解如何搭建Spring開發(fā)環(huán)境以及Spring IoC和AOP容器的原理及代碼分析。第4章和第5章概述Spring 5和Java 8的新特性。第6章和第7章講解Spring 5新特性—— WebFlux響應(yīng)式編程、開發(fā)和調(diào)試。第8章和第9章主要講解Spring 5集成Kotlin語言以及更多Spring 5新特性的細(xì)節(jié)。第10章~第19章主要介紹Spring集成其他熱門技術(shù),例如,Log4j2日志框架、Spring MVC、MyBatis、Redis緩存、 ZooKeeper、Kafka消息中間件、Mycat分庫分表中間件、Sharding-JDBC和Dubbo服務(wù)治理框架等。附錄部分介紹本書涉及的以及在面試中常見的設(shè)計(jì)模式。 本書適用于所有Java編程語言開發(fā)人員、分布式系統(tǒng)開發(fā)愛好者以及計(jì)算機(jī)專業(yè)的學(xué)生等。
SPRING 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn) 內(nèi)容簡介
Spring框架是為了降低解決企業(yè)系統(tǒng)開發(fā)的復(fù)雜度而產(chǎn)生的,掌握并學(xué)會(huì)使用Spring框架進(jìn)行項(xiàng)目開發(fā),是Java開發(fā)人員推薦技能之一,本書從企業(yè)應(yīng)用開發(fā)的角度出發(fā),深入淺出地講解了Spring 5的新特性和Spring集成開發(fā)技術(shù)。全書共19章,章~第3章主要講解如何搭建Spring開發(fā)環(huán)境以及Spring IoC和AOP容器的原理及代碼分析。第4章和第5章概述Spring 5和Java 8的新特性。第6章和第7章講解Spring 5新特性—— WebFlux響應(yīng)式編程、開發(fā)和調(diào)試。第8章和第9章主要講解Spring 5集成Kotlin語言以及更多Spring 5新特性的細(xì)節(jié)。0章~9章主要介紹Spring集成其他熱門技術(shù),例如,Log4j2日志框架、Spring MVC、MyBatis、Redis緩存、 ZooKeeper、Kafka消息中間件、Mycat分庫分表中間件、Sharding-JDBC和Dubbo服務(wù)治理框架等。附錄部分介紹本書涉及的以及在面試中常見的設(shè)計(jì)模式。 本書適用于所有Java編程語言開發(fā)人員、分布式系統(tǒng)開發(fā)愛好者以及計(jì)算機(jī)專業(yè)的學(xué)生等。
SPRING 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn) 目錄
**篇 Spring基礎(chǔ)篇
第1章 環(huán)境搭建 3
1.1 Spring介紹 3
1.1.1 Spring設(shè)計(jì)目標(biāo) 3
1.1.2 Spring各個(gè)子模塊 3
1.1.3 Spring使用場景 4
1.1.4 Spring與Spring MVC的關(guān)系 5
1.1.5 Spring 5高級(jí)特性 5
1.2 環(huán)境準(zhǔn)備 5
1.2.1 安裝JDK 5
1.2.2 安裝IntelliJ IDEA 6
1.2.3 安裝Apache Maven 6
1.2.4 安裝Apache Tomcat 7
1.3 快速搭建Spring 5項(xiàng)目 8
1.3.1 使用IntelliJ IDEA創(chuàng)建Spring 5 Spring MVC項(xiàng)目 8
1.3.2 測試部署 9
1.4 小結(jié) 9
第2章 Spring IoC容器原理 10
2.1 IoC容器揭秘 10
2.1.1 IoC的概念 10
2.1.2 依賴倒置原則 11
2.1.3 依賴注入 16
2.2 Spring IoC的實(shí)現(xiàn)方式 17
2.2.1 XML方式實(shí)現(xiàn) 17
2.2.2 通過注解方式實(shí)現(xiàn) 20
2.3 Spring IoC實(shí)現(xiàn)原理解析 21
2.3.1 BeanFactory代碼解析 21
2.3.2 ApplicationContext代碼解析 22
2.3.3 BeanDefinition代碼解析 23
2.3.4 Spring IoC代碼分析 23
2.4 Spring IoC容器中Bean的生命周期 44
2.5 小結(jié) 52
第3章 Spring AOP揭秘 53
3.1 AOP前置知識(shí) 53
3.1.1 JDK動(dòng)態(tài)代理 53
3.1.2 CGLIB動(dòng)態(tài)代理 56
3.1.3 AOP聯(lián)盟 58
3.2 AOP概述 58
3.2.1 AOP基本概念 58
3.2.2 Spring AOP相關(guān)概念 59
3.3 Spring AOP實(shí)現(xiàn) 60
3.3.1 基于JDK動(dòng)態(tài)代理實(shí)現(xiàn) 60
3.3.2 基于CGLIB動(dòng)態(tài)代理實(shí)現(xiàn) 65
3.4 基于Spring AOP的實(shí)戰(zhàn) 70
3.4.1 增強(qiáng)類型 70
3.4.2 前置增強(qiáng) 71
3.4.3 后置增強(qiáng) 73
3.4.4 環(huán)繞增強(qiáng) 74
3.4.5 異常拋出增強(qiáng) 75
3.4.6 引介增強(qiáng) 75
3.4.7 切入點(diǎn)類型 77
3.5 Spring集成AspectJ實(shí)戰(zhàn) 78
3.5.1 使用AspectJ方式配置Spring AOP 78
3.5.2 AspectJ各種切點(diǎn)指示器 81
3.5.3 args()與“@args()” 81
3.5.4 @annotation() 87
3.5.5 execution 89
3.5.6 target()與“@target()” 90
3.5.7 this() 92
3.5.8 within()與“@within()” 95
3.6 Spring AOP的實(shí)現(xiàn)原理 98
3.6.1 設(shè)計(jì)原理 99
3.6.2 JdkDynamicAopProxy 106
3.6.3 CglibAopProxy 110
3.7 小結(jié) 115
第二篇 Spring 5新特性篇
第4章 Spring 5新特性概述 117
4.1 Spring 5.0新特性 117
4.1.1 運(yùn)行環(huán)境 117
4.1.2 刪除的代碼 118
4.1.3 核心修改 118
4.1.4 核心容器更新 118
4.1.5 Spring Web MVC更新 118
4.1.6 Spring WebFlux 119
4.1.7 對(duì)Kotlin的支持 119
4.1.8 測試改進(jìn) 120
4.2 Spring 5.1新特性 121
4.2.1 核心修改 121
4.2.2 核心容器更新 121
4.2.3 Web修改 121
4.2.4 Spring Web MVC更新 121
4.2.5 Spring WebFlux更新 122
4.2.6 Spring Messaging更新 122
4.2.7 Spring ORM更新 122
4.2.8 測試更新 122
第5章 Java 8新特性概述 123
5.1 Lambda表達(dá)式 123
5.1.1 Lambda表達(dá)式初探 123
5.1.2 Lambda表達(dá)式作用域 125
5.1.3 在線程中使用Lambda表達(dá)式 126
5.1.4 在集合中使用Lambda表達(dá)式 127
5.1.5 在Stream中使用Lambda表達(dá)式 128
5.2 接口默認(rèn)方法 129
5.3 小結(jié) 132
第6章 Spring WebFlux響應(yīng)式編程 133
6.1 傳統(tǒng)的編程模型 133
6.2 響應(yīng)式編程模型 134
6.3 Reactor 135
6.3.1 Flux與Mono 135
6.3.2 subscribe() 137
6.3.3 操作符(Operator) 139
6.3.4 線程模型 144
6.4 Spring WebFlux 146
6.4.1 基于注解的WebFlux開發(fā)方式 146
6.4.2 基于函數(shù)式的WebFlux開發(fā)方式 147
6.5 小結(jié) 152
第7章 WebClient響應(yīng)式客戶端 153
7.1 RestTemplate調(diào)試Spring MVC 153
7.2 WebClient調(diào)試Spring WebFlux 156
7.3 小結(jié) 158
第8章 Spring 5結(jié)合Kotlin編程 159
8.1 Kotlin簡介 159
8.1.1 Kotlin的特性 159
8.1.2 Kotlin基本數(shù)據(jù)類型 161
8.1.3 Kotlin開發(fā)環(huán)境搭建 161
8.1.4 在Kotlin中定義常量與變量 162
8.1.5 字符串模板 162
8.1.6 NULL檢查機(jī)制 163
8.1.7 For循環(huán)和區(qū)間 163
8.1.8 定義函數(shù) 166
8.1.9 類和對(duì)象 167
8.1.10 Kotlin與Java互操作 169
8.2 Spring 5集成Kotlin 170
8.3 小結(jié) 172
第9章 Spring 5更多新特性 173
9.1 Resource接口 173
9.2 HTTP 2 174
9.2.1 HTTP的現(xiàn)狀 174
9.2.2 HTTP 2的新特性 174
9.2.3 多路復(fù)用與長連接的區(qū)別 175
9.3 JUnit 5 176
9.3.1 JUnit 5簡介 176
9.3.2 JUnit 5快速體驗(yàn) 176
9.3.3 JUnit 5常用注解 178
9.4 小結(jié) 179
第三篇 Spring系統(tǒng)集成篇
第10章 Spring集成Log4j2 181
10.1 Log4j2配置詳解 181
10.2 Log4j2日志級(jí)別 184
10.3 Log4j2實(shí)戰(zhàn)演練 185
10.4 小結(jié) 188
第11章 Spring集成Spring MVC 189
11.1 Spring MVC快速體驗(yàn) 189
11.1.1 web.xml配置 189
11.1.2 創(chuàng)建Spring MVC的配置 文件 190
11.1.3 創(chuàng)建Spring MVC的視圖 文件 190
11.1.4 創(chuàng)建控制器 191
11.1.5 測試運(yùn)行 191
11.2 Spring MVC視圖呈現(xiàn) 192
11.2.1 FreeMarker視圖的實(shí)現(xiàn) 192
11.2.2 XML視圖的實(shí)現(xiàn) 193
11.2.3 JSON視圖的實(shí)現(xiàn) 195
11.3 Spring MVC攔截器 196
11.4 Spring MVC代碼解析 198
11.5 小結(jié) 225
第12章 Spring集成MyBatis 226
12.1 Spring、Spring MVC和MyBatis集成 快速體驗(yàn) 226
12.2 MyBatis代碼解析 236
12.3 小結(jié) 243
第13章 Spring事務(wù)管理 244
13.1 事務(wù)的特性 244
13.2 事務(wù)的隔離級(jí)別 244
13.2.1 READ_UNCOMMITTED 245
13.2.2 READ_COMMITTED 245
13.2.3 REPEATABLE_READ 246
13.2.4 SERIALIZABLE 246
13.3 JDBC方式使用事務(wù) 247
13.4 Spring事務(wù)管理快速體驗(yàn) 248
13.5 Spring事務(wù)隔離級(jí)別 254
13.6 Spring事務(wù)傳播行為 255
13.7 Spring事務(wù)代碼分析 255
13.8 小結(jié) 263
第14章 Spring集成Redis 264
14.1 Redis單節(jié)點(diǎn)安裝 264
14.2 Redis支持的數(shù)據(jù)類型 266
14.2.1 Redis String類型的使用 方式 266
14.2.2 Redis Hash類型的使用 方式 271
14.2.3 Redis List類型的使用 方式 274
14.2.4 Redis Set類型的使用 方式 277
14.2.5 Redis SortedSet類型的使用 方式 280
14.3 Redis持久化策略 284
14.3.1 Redis RDB持久化 284
14.3.2 Redis AOF持久化 285
14.4 Redis主從復(fù)制模式 287
14.4.1 Redis一主一從拓?fù)浣Y(jié)構(gòu) 289
14.4.2 Redis一主多從拓?fù)浣Y(jié)構(gòu) 289
14.4.3 Redis樹形拓?fù)浣Y(jié)構(gòu) 290
14.4.4 Redis主從架構(gòu)的缺點(diǎn) 291
14.5 Redis哨兵模式 291
14.5.1 Redis哨兵模式簡介 291
14.5.2 Redis哨兵定時(shí)監(jiān)控任務(wù) 292
14.5.3 主觀下線和客觀下線 294
14.5.4 Redis哨兵選舉領(lǐng)導(dǎo)者 295
14.5.5 故障轉(zhuǎn)移 295
14.5.6 Redis哨兵模式安裝部署 296
14.6 Redis集群模式 302
14.6.1 Redis集群模式數(shù)據(jù)共享 303
14.6.2 Redis集群中的主從復(fù)制 303
14.6.3 Redis集群中的一致性 問題 303
14.6.4 Redis集群架構(gòu) 304
14.6.5 Redis集群容錯(cuò) 304
14.6.6 Redis集群環(huán)境搭建 305
14.7 Spring、MyBatis和Redis集成快速 體驗(yàn) 313
14.8 Redis緩存穿透和雪崩 323
14.8.1 Redis緩存穿透 323
14.8.2 Redis緩存雪崩 326
14.9 小結(jié) 329
第15章 Spring集成ZooKeeper 330
15.1 ZooKeeper集群安裝 330
15.2 ZooKeeper總體架構(gòu) 336
15.2.1 ZooKeeper選舉機(jī)制 336
15.2.2 ZooKeeper數(shù)據(jù)模型 338
15.3 Spring集成ZooKeeper快速體驗(yàn) 342
15.4 ZooKeeper發(fā)布訂閱 346
15.4.1 NodeCache 346
15.4.2 PathChildrenCache 349
15.4.3 TreeCache 352
15.5 ZooKeeper分布式鎖 356
15.6 小結(jié) 361
第16章 Spring集成Kafka 362
16.1 Kafka集群安裝 362
16.2 Kafka總體架構(gòu) 365
16.3 Spring集成Kafka快速體驗(yàn) 374
16.4 小結(jié) 377
第17章 Spring集成Mycat 379
17.1 Mycat分庫分表 379
17.2 Mycat分庫分表實(shí)戰(zhàn) 381
17.3 Spring MyBatis Mycat快速體驗(yàn) 386
17.4 小結(jié) 397
第18章 Spring集成Sharding-JDBC 398
18.1 Spring集成Sharding-JDBC快速 體驗(yàn) 398
18.2 Sharding-JDBC強(qiáng)制路由 407
18.3 Sharding-JDBC分布式主鍵 408
18.4 小結(jié) 413
第19章 Spring集成Dubbo 414
19.1 遠(yuǎn)程過程調(diào)用協(xié)議 414
19.2 Spring集成Dubbo快速體驗(yàn) 415
19.3 Dubbo代碼分析 419
19.4 小結(jié) 452
附錄A 設(shè)計(jì)模式 453
A.1 工廠模式 453
A.2 抽象工廠模式 456
A.3 單例模式 462
A.4 建造者模式 463
A.5 原型模式 468
A.6 適配器模式 472
A.7 橋接模式 476
A.8 標(biāo)準(zhǔn)模式 477
A.9 組合模式 481
A.10 裝飾器模式 483
A.11 外觀模式 486
A.12 享元模式 489
A.13 代理模式 491
A.14 責(zé)任鏈模式 493
A.15 命令模式 496
A.16 解釋器模式 499
A.17 迭代器模式 502
A.18 中介者模式 504
A.19 備忘錄模式 506
A.20 觀察者模式 509
A.21 狀態(tài) 模 式 511
A.22 空對(duì)象模式 513
A.23 策略模式 516
A.24 模板模式 519
A.25 攔截過濾器模式 522
參考文獻(xiàn) 365
SPRING 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn) 作者簡介
周冠亞,上海交通大學(xué)軟件工程碩士,先后就職于萬達(dá)網(wǎng)絡(luò)科技有限公司、上海2345網(wǎng)絡(luò)科技有限公司、美團(tuán)點(diǎn)評(píng),主要從事后端Java開發(fā)工作,擁有豐富的軟件開發(fā)經(jīng)驗(yàn),熟悉Java、高并發(fā)、微服務(wù)、大數(shù)據(jù)及相關(guān)軟件架構(gòu)。
黃文毅, CSDN博客專家,CSDN學(xué)院、網(wǎng)易學(xué)院和騰訊學(xué)院等網(wǎng)絡(luò)學(xué)院講師;曾就職于廈門星耀藍(lán)圖科技有限公司和上海美團(tuán),目前就職于廈門美圖科技有限公司,主要從事美圖秀秀和美拍后端開發(fā)工作。
- >
名家?guī)阕x魯迅:故事新編
- >
中國人在烏蘇里邊疆區(qū):歷史與人類學(xué)概述
- >
經(jīng)典常談
- >
山海經(jīng)
- >
莉莉和章魚
- >
人文閱讀與收藏·良友文學(xué)叢書:一天的工作
- >
我與地壇
- >
自卑與超越