书籍详情

手写Spring:渐进式源码实践

手写Spring:渐进式源码实践

作者:付政委

出版社:电子工业出版社

出版时间:2022-10-01

ISBN:9787121444203

定价:¥128.00

购买这本书可以去
内容简介
  《手写Spring:渐进式源码实践》基于Spring框架的核心逻辑,通过实现简化版Spring框架的方式,对Spring进行分析、设计和实践。本书以实践为核心,摒弃Spring源码中繁杂的内容,选择框架中的核心逻辑,简化代码实现过程,保留核心功能,如IOC、AOP、Bean的生命周期、上下文、作用域、资源处理、JDBC、事务、开发简易版ORM框架、将ORM框架整合到Spring框架中等内容的方案设计和源码实现。在Spring框架功能模块的开发过程中,逐步介绍并深入分析其中所涉及的设计原则和设计模式,使读者游刃有余地解决在调试Spring源码及开发SpringBoot Starter组件时遇到的问题。 《手写Spring:渐进式源码实践》既可以作为计算机相关行业研发人员的辅导书,也可以作为高等院校计算机专业学生的参考书。无论是初学者,还是中、高级研发人员,都能从本书中获得启发。
作者简介
  付政委(小傅哥) 作为一名一线互联网Java工程师、架构师,曾开发过交易、营销类项目,运营、活动类项目,设计过中间件,组织过系统重构,编写过技术专利。他不仅从事业务系统的开发工作,也经常做一些字节码插桩类的设计和实现,对架构的设计和落地具有丰富的经验。他既热衷于Java语言,也喜欢研究中继器、I/O板卡、C#和PHP,是一名活跃的技术“折腾者”。常逛GitHub,乐于分享技术文章。 沉淀、分享、成长,让自己和他人都能有所收获!
目录

引言 /1

第1章 实现一个简单的Spring Bean容器 / 7

1.1 容器是什么 / 7

1.2 简单容器设计 / 8

1.3 简单容器实现 / 9

1.4 容器使用测试 / 12

1.5 本章总结 / 13

第2章 实现Bean对象的定义、注册和获取 / 14

2.1 容器的思考 / 14

2.2 完善容器设计 / 15

2.3 完善容器实现 / 16

2.4 Bean 生命周期测试 / 22

2.5 本章总结 / 24

第3章 基于Cglib实现含构造函数的类实例化策略 / 25

3.1 实例化问题 / 25

3.2 实例化策略设计 / 26

3.3 实例化策略代码实现 / 27

3.4 构造函数对象测试 / 32

3.5 本章总结 / 35

第4章 注入属性和依赖对象 / 36

4.1 Bean对象拆解思考 / 36

4.2 属性填充设计 / 37

4.3 属性填充实现 / 38

4.4 注入属性测试 / 43

4.5 本章总结 / 46

第5章 资源加载器解析文件注册对象 / 47

5.1 对象创建问题 / 47

5.2 资源加载和解析设计 / 48

5.3 资源加载和解析设计实现 / 49

5.4 配置Bean对象注册测试 / 60

5.5 本章总结 / 64

第6 章 实现应用上下文 / 65

6.1 分治Bean 对象功能 / 65

6.2 Bean 对象扩展和上下文设计 / 66

6.3 Bean 对象扩展和上下文实现 / 68

6.4 应用上下文功能测试 / 79

6.5 本章总结 / 83

第7 章 Bean 对象的初始化和销毁/ 84

7.1 容器管理Bean 功能 / 84

7.2 初始化和销毁设计 / 85

7.3 初始化和销毁实现 / 87

7.4 容器功能测试 / 97

7.5 本章总结 / 99

第8 章 感知容器对象 / 101

8.1 Spring Bean 容器的功能 / 101

8.2 感知容器设计 / 102

8.3 感知容器实现 / 103

8.4 Aware 接口的功能测试 / 111

8.5 本章总结 / 114

第9 章 对象作用域和FactoryBean/ 117

9.1 Bean 对象的来源和模式 / 117

9.2 FactoryBean 和对象模式设计 / 118

9.3 FactoryBean 和对象模式实现 / 119

9.4 代理Bean 和对象模式测试 / 128

9.5 本章总结 / 132

第10 章 容器事件和事件监听器 / 134

10.1 运用事件机制降低耦合度 / 134

10.2 事件观察者设计 / 135

10.3 事件观察者实现 / 136

10.4 事件使用测试 / 146

10.5 本章总结 / 148

第11 章 基于JDK、Cglib 实现AOP 切面 / 150

11.1 动态代理 / 150

11.2 AOP 切面设计 / 151

11.3 AOP 切面实现 / 152

11.4 AOP 切面测试 / 163

11.5 本章总结 / 165

第12 章 把AOP 融入Bean 的生命周期 / 166

12.1 AOP 与框架整合思考 / 166

12.2 AOP 切面设计 / 167

12.3 AOP 切面实现 / 168

12.4 切面使用测试 / 176

12.5 本章总结 / 179

第13 章 自动扫描注册Bean对象 / 180

13.1 注入对象完善点 / 180

13.2 自动扫描注册设计 / 181

13.3 自动扫描注册实现 / 182

13.4 注册Bean 对象测试 / 190

13.5 本章总结 / 193

第14 章 通过注解注入属性信息 / 194

14.1 引入注入注解 / 194

14.2 注入属性信息设计 / 195

14.3 注入属性信息实现 / 196

14.4 注解使用测试 / 206

14.5 本章总结 / 208

第15 章 给代理对象设置属性注入 / 210

15.1 代理对象创建过程问题 / 210

15.2 代理对象属性填充设计 / 211

15.3 代理对象属性填充实现 / 212

15.4 代理对象属性注入测试 / 219

15.5 本章总结 / 221

第16 章 通过三级缓存解决循环依赖 / 222

16.1 复杂对象的创建思考 / 222

16.2 循环依赖设计 / 223

16.3 循环依赖实现 / 227

16.4 循环依赖测试 / 234

16.5 本章总结 / 238

第17 章 数据类型转换 / 239

17.1 类型转换设计 / 239

17.2 类型转换实现 / 240

17.3 类型转换测试 / 249

17.4 本章总结 / 251

第18 章 JDBC 功能整合 / 252

18.1 JdbcTemplate 说明 / 252

18.2 整合JDBC 服务设计 / 253

18.2 整合 JDBC 服务开发 / 254

18.3 JDBC 功能测试 / 258

18.4 本章总结 / 260

第19 章 事务处理 / 261

19.1 了解事务 / 261

19.2 事务功能设计 / 262

19.3 事务功能实现 / 264

19.4 切面事务测试 / 272

19.5 本章总结 / 276

第20 章 ORM 框架实现 / 278

20.1 简单ORM 框架设计 / 278

20.2 简单ORM 框架实现 / 279

20.3 ORM 框架使用测试 / 287

20.4 本章总结 / 290

第21 章 将ORM 框架整合到Spring Bean容器中 / 291

21.1 ORM-Spring 整合设计 / 291

21.2 ORM-Spring 整合实现 / 292

21.3 整合功能验证 / 299

21.4 本章总结 / 302

猜您喜欢

读书导航