Spring容器是怎么初始化的
原创声明
本人署名原创文章,未经许可不支持转载。本公众号所有文章均原创,为了容易理解和记忆,文章以图解为主、代码为辅。如果您感兴趣,欢迎关注!
文/吴潇(Java Senior)
本文分析Spring容器初始化过程。在Spring Framework中,所有类型的容器都是由ApplicationContext接口表示的,而
AbstractApplicationContext是这个接口的第一个实现,包含适用于各类容器的公共代码。所以我们分析容器初始化过程,主要是分析AbstractApplicationContext中跟初始化相关的代码。
类结构
如果从Web应用中常用的XmlWebApplicationContext容器开始,不断查找父类,可以得知Spring容器的主体代码在
AbstractApplicationContext这个类中。Spring容器类的继承关系如下图所示。
AbstractApplicationContext的父类DefaultResourceLoader只负责加