赠书:一本书揭开 Spring Boot 技术内幕
点击上方蓝色“程序猿DD”,选择“设为星标”
回复“资源”获取独家整理的学习资料!
经过几年的发展,Spring Boot几乎已成为Java企业级开发的标准框架,它为开发人员提供了极其方便的项目框架搭建、软件集成功能,极大地提升了开发人员的工作效率,减少了企业的运营成本。而Spring Boot又极其简单易用,一个新手按照官方文档的指导在十几分钟内就能创建一个可运行的Spring Boot项目。
Spring Boot为开发人员提供了方便,但一些开发人员并不了解Spring Boot为什么可以带来方便的底层逻辑,也没有尝试借鉴Spring Boot的这种创新。这不仅会导致他们在使用Spring Boot的过程中不能深层次发挥它的优势,还会导致在大范围应用Spring Boot之后出现各种问题却找不到解决办法的情况,更别说借鉴Spring Boot的创新了。
今天为大家介绍一本新书《Spring boot技术内幕:架构设计与实现原理》
本书特色
本书有别于市面上其他Spring Boot入门和实战类的相关书,更多侧重于Spring Boot设计思想、原理及具体功能实现的源代码分析,从一个更深的层次带领读者了解Spring Boot。书中内容涵盖范围较广,却又不显冗余,每一个知识点都通过典型的功能实现来进行分析。
本书内容基于Spring Boot 2.2.1,书中涵盖的许多知识点都是作者多年经验的总结,希望能给读者带来全新的知识盛宴。
内容简介
这是一本从源码角度分析Spring Boot底层原理和实现方式,以求帮助读者掌握Spring Boot多场景联合运用、项目性能调优的实践指导书。本书以新版本的Spring Boot 2.x的源码为基础进行分析,不仅提炼出了Spring Boot源码的核心思想,还从多个维度对Spring Boot框架中的数十个主流功能模块进行了源码级的分析,更为难能可贵的是,书中还对Spring Boot外置辅助工具进行了源码级的分析。此外,为了指导读者实践应用,本书除了在各章相关部分给出实践方法外,还以用独立章节以实际案例的形式进行专门指导。
本书从逻辑上可分为4个部分:
第一部分:准备部分,包括第1章,这部分主要介绍进行Spring Boot解析需要做的准备工作,包括源码的获取与调试、源码阅读工具等,同时还给出了需要在思想层面做的准备——整体了解源码目录结构和Spring Boot设计思想。
第二部分:原理部分,包含第2~4章内容,着重讲解Spring Boot实现的原理及基本流程,这是Spring Boot的核心之一,也是后面章节的基础。
第三部分:内置组件部分,包含第5~12章,着重讲解Spring Boot内置集成框架的实现原理、源代码分析及实战分析,其中包括对外化配置、web应用、内置servlet容器、数据库、消息源、缓存、日志进行的源码级的分析和实践运用指导。
第四部分:外置组件部分,包含第13~16章,着重讲解实际项目实施过程中肯定会用到的单元测试、打包、部署、监控等相关外置辅助工具,这部分不仅介绍了相关工具的集成方法,还从源码角度进行了详细解析。
读者对象
Spring Boot的使用者和爱好者。
Spring系列框架的使用者和爱好者。
对源码感兴趣,希望学习源码解析相关方法的技术人员。
开设Spring Boot相关课程的院校师生。
目录
★第一部分 准备篇
●第1章 阅读代码前的准备 2
1.1 获取和调试Spring Boot源代码 2
1.2Spring Boot源代码的目录结构 3
1.3 源代码阅读工具 5
1.4Spring Boot的设计理念和目标 6
1.5Spring Boot的整体架构 7
★第二部分 原理篇
●第2章 Spring Boot核心运行原理 10
2.1 核心运行原理 10
2.2 运作原理源码解析之@EnableAuto-Configuration 11
2.3AutoConf?igurationImportSelector源码解析 15
2.4@Conditional条件注解 33
2.5 实例解析 39
2.6 小结 41
●第3章 Spring Boot构造流程源码分析 42
3.1SpringApplication的初始化简介 42
3.2SpringApplication实例化流程 43
3.3SpringApplication构造方法参数 44
3.4Web应用类型推断 45
3.5ApplicationContextInitializer加载 47
3.6ApplicationListener加载 50
3.7 入口类推断 51
3.8SpringApplication的定制化配置 52
3.9 小结 54
●第4章 Spring Boot运行流程源码分析 55
4.1run方法核心流程 55
4.2SpringApplicationRunListener监听器 57
4.3 初始化ApplicationArguments 63
4.4 初始化Conf?igurableEnvironment 63
4.5 忽略信息配置 68
4.6 打印Banner 68
4.7Spring应用上下文的创建 69
4.8Spring应用上下文的准备 70
4.9Spring应用上下文的刷新 75
4.10 调用ApplicationRunner和CommandLineRunner 77
4.11 小结 78
★第三部分 内置组件篇
●第5章 Spring Boot外化配置源码解析 80
5.1 外化配置简介 80
5.2ApplicationArguments 参数处理 81
5.3 命令参数的获取 86
5.4 配置文件的加载 88
5.5 基于Prof?ile的处理实现 93
5.6 综合实战 97
5.7 小结 102
●第6章 Spring Boot Web应用源码解析 103
6.1 遗失的web.xml 103
6.2Web应用的自动配置 104
6.3Spring MVC的自动配置 111
6.4 综合实战 117
6.5 小结 120
●第7章 Spring Boot 内置Servlet容器源码解析 121
7.1Web容器自动配置 121
7.2WebServer初始化过程 128
7.3DispatcherServlet的加载过程 134
7.4 综合实战 140
7.5 小结 141
●第8章 Spring Boot 数据库配置源码解析 142
8.1 自动配置注解解析 142
8.2 自动配置内部实现解析 150
8.3JdbcTemplateAutoConfiguration 157
8.4 异常案例分析 159
8.5 小结 159
●第9章 Spring Boot 消息源码解析 160
9.1JMS基础自动配置 160
9.2ActiveMQ自动配置 166
9.3@JmsListener注解解析 173
9.4 小结 175
●第10章 Spring Boot Cache源码解析 176
10.1Cache简介 176
10.2Cache自动配置 177
10.3 默认Cache配置 183
10.4 小结 188
●第11章 Spring Boot 日志源码解析 189
11.1LoggingApplicationListener的触发 189
11.2LoggingApplicationListener的执行 191
11.3 小结 203
●第12章 实战:创建Spring Boot自动配置项目 204
12.1 自定义Spring Boot Starter项目 204
12.2Starter测试使用 207
12.3 小结 208
★第四部分 外置组件篇
●第13章 Spring Boot单元测试 210
13.1Spring Boot对单元测试的支持 210
13.2 常用单元测试注解 211
13.3JUnit5单元测试示例 212
13.4Web应用单元测试 214
13.5MockMvc的自动配置 217
13.6 小结 221
●第14章 Spring Boot打包部署解析 222
14.1Spring Boot的jar包 222
14.2Launcher实现原理 227
14.3 小结 234
●第15章 Spring Boot 应用监控解析 235
15.1Actuator简介 235
15.2Actuator自动配置 237
15.3Actuator端点展示 244
15.4 小结 247
●第16章 Spring Boot Security支持 248
16.1Security自动配置 248
16.2SecurityAutoConfiguration详解 249
16.3SecurityFilterAutoConfiguration详解 255
16.4 小结 257
上下滑动查看抽奖赠书
截止时间:2020年7月19日 17:00
如何抽奖:扫描下方二维码,关注公众号,回复关键词 :抽奖