欢迎光临
免费的PDF电子书下载网站

Spring 5企业级开发实战 PDF下载

编辑推荐

本书理论与工程实践相结合,全面阐述Spring 5的新特性
从Spring实战到源码分析,再到原理剖析,以及Spring与各种主流中间件及框架结合的落地实践,可以让读者深入理解Spring的实现原理和底层架构,使用Spring的强大功能至上而下地构建复杂的Spring应用程序 

内容简介

Spring框架是为了降低解决企业系统开发的复杂度而产生的,掌握并学会使用Spring框架进行项目开发,是Java开发人员必备技能之一,本书从企业应用开发的角度出发,深入浅出地讲解了Spring 5的新特性和Spring集成开发技术。全书共19章,第1章~第3章主要讲解如何搭建Spring开发环境以及Spring IoC和AOP容器的原理及代码分析。第4章和第5章概述Spring 5和Java 8的新特性。第6章和第7章讲解Spring 5新特性—— WebFlux响应式编程、开发和调试。第8章和第9章主要讲解Spring 5集成Kotlin语言以及更多Spring 5新特性的细节。第10章~第19章主要介绍Spring集成其他热门技术,例如,Log4j2日志框架、Spring MVC、MyBatis、Redis缓存、 ZooKeeper、Kafka消息中间件、Mycat分库分表中间件、Sharding-JDBC和Dubbo服务治理框架等。附录部分介绍本书涉及的以及在面试中常见的设计模式。
本书适用于所有Java编程语言开发人员、分布式系统开发爱好者以及计算机专业的学生等。

作者简介

周冠亚,上海交通大学软件工程硕士,先后就职于万达网络科技有限公司、上海2345网络科技有限公司、美团点评,主要从事后端Java开发工作,拥有丰富的软件开发经验,熟悉Java、高并发、微服务、大数据及相关软件架构。
黄文毅, CSDN博客专家,CSDN学院、网易学院和腾讯学院等网络学院讲师;曾就职于厦门星耀蓝图科技有限公司和上海美团,目前就职于厦门美图科技有限公司,主要从事美图秀秀和美拍后端开发工作。

Spring 5企业级开发实战 PDF下载

目录

目    录
第一篇  Spring基础篇
 
第1章  环境搭建    3
1.1  Spring介绍    3
1.1.1  Spring设计目标    3
1.1.2  Spring各个子模块    3
1.1.3  Spring使用场景    4
1.1.4  Spring与Spring MVC的关系    5
1.1.5  Spring 5高级特性    5
1.2  环境准备    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项目    8
1.3.1  使用IntelliJ IDEA创建Spring 5 Spring MVC项目    8
1.3.2  测试部署    9
1.4  小结    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的实现方式    17
2.2.1  XML方式实现    17
2.2.2  通过注解方式实现    20
2.3  Spring IoC实现原理解析    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  小结    52
第3章  Spring AOP揭秘    53
3.1  AOP前置知识    53
3.1.1  JDK动态代理    53
3.1.2  CGLIB动态代理    56
3.1.3  AOP联盟    58
3.2  AOP概述    58
3.2.1  AOP基本概念    58
3.2.2  Spring AOP相关概念    59
3.3  Spring AOP实现    60
3.3.1  基于JDK动态代理实现    60
3.3.2  基于CGLIB动态代理实现    65
3.4  基于Spring AOP的实战    70
3.4.1  增强类型    70
3.4.2  前置增强    71
3.4.3  后置增强    73
3.4.4  环绕增强    74
3.4.5  异常抛出增强    75
3.4.6  引介增强    75
3.4.7  切入点类型    77
3.5  Spring集成AspectJ实战    78
3.5.1  使用AspectJ方式配置Spring AOP    78
3.5.2  AspectJ各种切点指示器    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的实现原理    98
3.6.1  设计原理    99
3.6.2  JdkDynamicAopProxy    106
3.6.3  CglibAopProxy    110
3.7  小结    115
 
第二篇  Spring 5新特性篇
 
第4章  Spring 5新特性概述    117
4.1  Spring 5.0新特性    117
4.1.1  运行环境    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  对Kotlin的支持    119
4.1.8  测试改进    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表达式    123
5.1.1  Lambda表达式初探    123
5.1.2  Lambda表达式作用域    125
5.1.3  在线程中使用Lambda表达式    126
5.1.4  在集合中使用Lambda表达式    127
5.1.5  在Stream中使用Lambda表达式    128
5.2  接口默认方法    129
5.3  小结    132
第6章  Spring WebFlux响应式编程    133
6.1  传统的编程模型    133
6.2  响应式编程模型    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开发方式    146
6.4.2  基于函数式的WebFlux开发方式    147
6.5  小结    152
第7章  WebClient响应式客户端    153
7.1  RestTemplate调试Spring MVC    153
7.2  WebClient调试Spring WebFlux    156
7.3  小结    158
第8章  Spring 5结合Kotlin编程    159
8.1  Kotlin简介    159
8.1.1  Kotlin的特性    159
8.1.2  Kotlin基本数据类型    161
8.1.3  Kotlin开发环境搭建    161
8.1.4  在Kotlin中定义常量与变量    162
8.1.5  字符串模板    162
8.1.6  NULL检查机制    163
8.1.7  For循环和区间    163
8.1.8  定义函数    166
8.1.9  类和对象    167
8.1.10  Kotlin与Java互操作    169
8.2  Spring 5集成Kotlin    170
8.3  小结    172
第9章  Spring 5更多新特性    173
9.1  Resource接口    173
9.2  HTTP 2    174
9.2.1  HTTP的现状    174
9.2.2  HTTP 2的新特性    174
9.2.3  多路复用与长连接的区别    175
9.3  JUnit 5    176
9.3.1  JUnit 5简介    176
9.3.2  JUnit 5快速体验    176
9.3.3  JUnit 5常用注解    178
9.4  小结    179
 
第三篇  Spring系统集成篇
 
第10章  Spring集成Log4j2    181
10.1  Log4j2配置详解    181
10.2  Log4j2日志级别    184
10.3  Log4j2实战演练    185
10.4  小结    188
第11章  Spring集成Spring MVC    189
11.1  Spring MVC快速体验    189
11.1.1  web.xml配置    189
11.1.2  创建Spring MVC的配置 文件    190
11.1.3  创建Spring MVC的视图 文件    190
11.1.4  创建控制器    191
11.1.5  测试运行    191
11.2  Spring MVC视图呈现    192
11.2.1  FreeMarker视图的实现    192
11.2.2  XML视图的实现    193
11.2.3  JSON视图的实现    195
11.3  Spring MVC拦截器    196
11.4  Spring MVC代码解析    198
11.5  小结    225
第12章  Spring集成MyBatis    226
12.1  Spring、Spring MVC和MyBatis集成 快速体验    226
12.2  MyBatis代码解析    236
12.3  小结    243
第13章  Spring事务管理    244
13.1  事务的特性    244
13.2  事务的隔离级别    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方式使用事务    247
13.4  Spring事务管理快速体验    248
13.5  Spring事务隔离级别    254
13.6  Spring事务传播行为    255
13.7  Spring事务代码分析    255
13.8  小结    263
第14章  Spring集成Redis    264
14.1  Redis单节点安装    264
14.2  Redis支持的数据类型    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主从复制模式    287
14.4.1  Redis一主一从拓扑结构    289
14.4.2  Redis一主多从拓扑结构    289
14.4.3  Redis树形拓扑结构    290
14.4.4  Redis主从架构的缺点    291
14.5  Redis哨兵模式    291
14.5.1  Redis哨兵模式简介    291
14.5.2  Redis哨兵定时监控任务    292
14.5.3  主观下线和客观下线    294
14.5.4  Redis哨兵选举领导者    295
14.5.5  故障转移    295
14.5.6  Redis哨兵模式安装部署    296
14.6  Redis集群模式    302
14.6.1  Redis集群模式数据共享    303
14.6.2  Redis集群中的主从复制    303
14.6.3  Redis集群中的一致性 问题    303
14.6.4  Redis集群架构    304
14.6.5  Redis集群容错    304
14.6.6  Redis集群环境搭建    305
14.7  Spring、MyBatis和Redis集成快速 体验    313
14.8  Redis缓存穿透和雪崩    323
14.8.1  Redis缓存穿透    323
14.8.2  Redis缓存雪崩    326
14.9  小结    329
第15章  Spring集成ZooKeeper    330
15.1  ZooKeeper集群安装    330
15.2  ZooKeeper总体架构    336
15.2.1  ZooKeeper选举机制    336
15.2.2  ZooKeeper数据模型    338
15.3  Spring集成ZooKeeper快速体验    342
15.4  ZooKeeper发布订阅    346
15.4.1  NodeCache    346
15.4.2  PathChildrenCache    349
15.4.3  TreeCache    352
15.5  ZooKeeper分布式锁    356
15.6  小结    361
第16章  Spring集成Kafka    362
16.1  Kafka集群安装    362
16.2  Kafka总体架构    365
16.3  Spring集成Kafka快速体验    374
16.4  小结    377
第17章  Spring集成Mycat    379
17.1  Mycat分库分表    379
17.2  Mycat分库分表实战    381
17.3  Spring MyBatis Mycat快速体验    386
17.4  小结    397
第18章  Spring集成Sharding-JDBC    398
18.1  Spring集成Sharding-JDBC快速 体验    398
18.2  Sharding-JDBC强制路由    407
18.3  Sharding-JDBC分布式主键    408
18.4  小结    413
第19章  Spring集成Dubbo    414
19.1  远程过程调用协议    414
19.2  Spring集成Dubbo快速体验    415
19.3  Dubbo代码分析    419
19.4  小结    452
附录A  设计模式    453
A.1  工厂模式    453
A.2  抽象工厂模式    456
A.3  单例模式    462
A.4  建造者模式    463
A.5  原型模式    468
A.6  适配器模式    472
A.7  桥接模式    476
A.8  标准模式    477
A.9  组合模式    481
A.10  装饰器模式    483
A.11  外观模式    486
A.12  享元模式    489
A.13  代理模式    491
A.14  责任链模式    493
A.15  命令模式    496
A.16  解释器模式    499
A.17  迭代器模式    502
A.18  中介者模式    504
A.19  备忘录模式    506
A.20  观察者模式    509
A.21  状态 模 式    511
A.22  空对象模式    513
A.23  策略模式    516
A.24  模板模式    519
A.25  拦截过滤器模式    522
参考文献    365
 



Spring 5企业级开发实战 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:Spring 5企业级开发实战