spring源码解析是一个很大的工程,但是又是程序员进阶的一个
必经之路,至少了你阅读了它之后,不仅在开发中应用它的时候,
能够知道它的运行原理,排查spring的各种问题,更重要的是,通过阅读
spring源码,你可以学习它的设计理念,然后把这种开发习惯和思路用到你平常的
开发中。
阅读源码前,你至少要对SPRING的定义和模块有一定了解,不然看源码事倍功半。
首先spring是什么?spring提供了一套企业快速开发的框架。它包括很多模块:
1,核心容器
其中的核心就是 srping-bean,spring-core,spring-context,其中
bean和core模块提供了整个框架最基础的部分,包括了IOC和DI
核心概念:BeanFactory,
core模块:包含框架基本的核心工具类。其他组件的基本核心。
bean模块:包括访问配置文件,创建和管理bean以及进行inversion of control(控制反转)/DI(依赖注入)相关的操作
context模块:建立在core和bean提供的基础之上,提供了框架式(全局)访问对象的方式。
applicationcontext接口是context模块的关键。
core,bean和context构成了spring的骨架。
2,spring的设计理念
beans是核心中的核心,spring的思想基础是面向bean的编程,IOC容器可以看成是一个beans关系的集合。
context就是关系的bean关系的集合,整个关系集合又叫IOC容器。
core为发现建立和维护bean之间的关系提供了一系列的工具,为bean和context提供了支持。
知道了spring是什么,有哪些核心,下面就开始搭建spring的源码环境。
首先下载spring源码 最新5.1X,spring源码是用gradle打包编译的,JDK环境1.8+,
下载完之后,导入IDEA中,更新kotlin插件到最新,所有环境配好后,
找个spring的测试用例跑一下,成功了环境就OK了,失败了自己百度找原因。
博主环境就这样搭建好了,下面我们继续一步一步跟着spring的测试用例来解析spring的源码。