《SPRING源码深度解析 第2版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:郝佳编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2019
  • ISBN:7115499141
  • 页数:435 页
图书介绍:

第1部分 核心实现 2

第1章Spring整体架构和环境搭建 2

1.1 Spring的整体架构 2

1.2环境搭建 4

1.2.1源码链接获取 5

1.2.2源码下载及IDEA导入 6

1.3 cglib和objenesis的编译错误解决 9

1.3.1问题发现及原因 9

1.3.2问题解决 9

1.4 AspectJ编译问题解决 10

1.4.1问题发现 10

1.4.2问题原因 12

1.4.3问题解决 13

第2章 容器的基本实现 19

2.1容器基本用法 19

2.2功能分析 20

2.3工程搭建 21

2.4 Spring的结构组成 22

2.4.1 beans包的层级结构 22

2.4.2核心类介绍 23

2.5容器的基础XmlBeanFactory 26

2.5.1配置文件封装 27

2.5.2加载Bean 30

2.6获取XML的验证模式 33

2.6.1 DTD与XSD区别 33

2.6.2验证模式的读取 35

2.7获取Document 37

2.8解析及注册BeanDefinitions 40

2.8.1 profile属性的使用 42

2.8.2解析并注册BeanDefinition 42

第3章 默认标签的解析 44

3.1 bean标签的解析及注册 44

3.1.1解析BeanDefinition 46

3.1.2 AbstractBeanDefinition属性 64

3.1.3解析默认标签中的自定义标签元素 67

3.1.4注册解析的BeanDefinition 69

3.1.5通知监听器解析及注册完成 72

3.2 alias标签的解析 72

3.3 import标签的解析 73

3.4嵌入式beans标签的解析 76

第4章 自定义标签的解析 77

4.1自定义标签使用 78

4.2自定义标签解析 80

4.2.1获取标签的命名空间 81

4.2.2提取自定义标签处理器 81

4.2.3标签解析 83

第5章bean的加载 86

5.1 FactoryBeau的使用 92

5.2缓存中获取单例bean 93

5.3从bean的实例中获取对象 94

5.4获取单例 98

5.5准备创建bean 100

5.5.1处理override属性 101

5.5.2实例化的前置处理 102

5.6循环依赖 104

5.6.1什么是循环依赖 104

5.6.2 Spring如何解决循环依赖 104

5.7创建bean 108

5.7.1创建bean的实例 111

5.7.2记录创建bean的ObjectFactory 120

5.7.3属性注入 123

5.7.4初始化bean 132

5.7.5注册DisposableBean 136

第6章 容器的功能扩展 137

6.1设置配置路径 138

6.2扩展功能 138

6.3环境准备 140

6.4加载BeanFactory 141

6.4.1定制B eanF actory 143

6.4.2加载BeanDefinition 144

6.5功能扩展 145

6.5.1增加SpEL语言的支持 146

6.5.2增加属性注册编辑器 147

6.5.3添加ApplicationContextAwareProcessor处理器 152

6.5.4设置忽略依赖 154

6.5.5注册依赖 154

6.6 BeanFactory的后处理 154

6.6.1激活注册的BeanFactoryPostProcessor 154

6.6.2注册BeanPostProcessor 160

6.6.3初始化消息资源 163

6.6.4初始化App I icationEventMulticaster 167

6.6.5注册监听器 169

6.7初始化非延迟加载单例 169

6.8 finishRefresh 172

第7章AOP 175

7.1动态AOP使用示例 175

7.2动态AOP自定义标签 177

7.3创建AOP代理 181

7.3.1获取增强器 184

7.3.2寻找匹配的增强器 193

7.3.3创建代理 195

7.4静态AOP使用示例 209

7.5创建AOP静态代理 211

7.5.1 Instrumentation使用 211

7.5.2自定义标签 215

7.5.3织入 217

第2部分 企业应用 222

第8章 数据库连接JDBC 222

8.1 Spring连接数据库程序实现(JDBC) 223

8.2 save/update功能的实现 225

8.2.1基础方法execute 227

8.2.2 Update中的回调函数 231

8.3 query功能的实现 233

8.4 queryForObject 237

第9章 整合MyBatis 239

9.1 MyBatis独立使用 239

9.2 Spring整合MyBatis 243

9.3源码分析 245

9.3.1 sqlSessionFactory创建 245

9.3.2 MapperFactoryBean的创建 249

9.3.3 MapperScannerConfigurer 252

第10章 事务 262

10.1 JDBC方式下的事务使用示例 262

10.2事务自定义标签 265

10.2.1注册InfrastructureAdvisorAutoProxyCreator 265

10.2.2获取对应class/method的增强器 269

10.3事务增强器 276

10.3.1创建事务 279

10.3.2回滚处理 289

10.3.3事务提交 295

第11章SpringMVC 298

11.1 SpringMVC快速体验 298

11.2 ContextLoaderListener 302

11.2.1 ServletContextListener的使用 302

11.2.2 Spring中的ContextLoaderListener 303

11.3 DispatcherServlet 306

11.3.1 servlet的使用 307

11.3.2 DispatcherServlet的初始化 308

11.3.3 WebApplicationContext的初始化 311

11.4 DispatcherServlet的逻辑处理 327

11.4.1 MultipartContent类型的request处理 333

11.4.2根据request信息寻找对应的Handler 333

11.4.3没找到对应的Handler的错误处理 337

11.4.4根据当前Handler寻找对应的HandlerAdapter 338

11.4.5缓存处理 338

11.4.6 HandlerInterceptor的处理 339

11.4.7逻辑处理 340

11.4.8异常视图的处理 341

11.4.9根据视图跳转页面 341

第12章 远程服务 347

12.1 RMI 347

12.1.1使用示例 347

12.1.2服务端实现 349

12.1.3客户端实现 357

12.2 HttpInvoker 362

12.2.1使用示例 362

12.2.2服务端实现 364

12.2.3客户端实现 368

第13章Spring消息 374

13.1 JMS的独立使用 374

13.2 Spring整合ActiveMQ 376

13.3源码分析 378

13.3.1 JmsTemplate 379

13.3.2监听器容器 383

第3部分 Spring Boot 394

第14章Spring Boot体系原理 394

14.1 Spring Boot源码安装 396

14.2第一个Starter 397

14.3探索SpringApplication启动Spring 400

14.3.1 SpringContext创建 401

14.3.2 bean的加载 402

14.3.3 Spring扩展属性的加载 403

14.3.4总结 403

14.4 Starter自动化配置原理 403

14.4.1 spring.factories的加载 404

14.4.2 factories调用时序图 405

14.4.3配置类的解析 407

14.4.4 Componentscan的切入点 410

14.5 Conditional机制实现 413

14.5.1 Conditional使用 413

14.5.2 Conditional原理 415

14.5.3调用切入点 418

14.6属性自动化配置实现 420

14.6.1示例 420

14.6.2原理 422

14.7 Tomcat启动 428