Spring:SpringIOC容器初始化主体流程

开发 前端
Spring IoC 容器初始化的关键环节就在AbstractApplicationContext#refresh() 方法中,我们查看 refresh 方法来俯瞰容器创建的主体流程。

一、IOC容器体系

IoC容器是Spring的核心模块,是抽象了对象管理、依赖关系管理的框架解决方案。

Spring 提供了很多的容器,其中 BeanFactory 是顶层容器(根容器),不能被实例化,它定义了所有 IoC 容器 必须遵从的一套原则,具体的容器实现可以增加额外的功能,比如我们常用到的ApplicationContext,其下更具体的实现如 ClassPathXmlApplicationContext 包含了解析 xml 等一系列的内容,AnnotationConfigApplicationContext 则是包含了注解解析等一系列的内容。

Spring IoC 容器继承体系非常聪明,需要使用哪个层次用哪个层次即可,不必使用功能大而全。

BeanFactory顶级接口方法栈

BeanFacotry容器继承体系

通过其接口设计,我们可以看到我们一贯使用的 ApplicationContext 除了继承BeanFactory的子接口,还继承了ResourceLoader、MessageSource等接口,因此其提供的功能也就更丰富了。

二、IOC容器初始化主流程

Spring IoC 容器初始化的关键环节就在 AbstractApplicationContext#refresh() 方法中,我们查看 refresh 方法来俯瞰容器创建的主体流程。


责任编辑:武晓燕 来源: 今日头条
相关推荐

2021-03-12 10:30:11

SpringMVC流程初始化

2022-07-06 10:37:45

SpringServlet初始化

2020-12-03 09:50:52

容器IoC流程

2024-01-15 06:34:09

Gin镜像容器

2010-06-04 15:47:46

MySQL初始化roo

2022-05-10 10:06:03

Kafka

2023-11-12 23:08:17

C++初始化

2024-10-29 11:27:27

2023-07-13 09:13:18

Docker容器

2024-10-18 11:32:15

2021-07-12 12:20:08

Spring初始化方案

2011-06-17 15:29:44

C#对象初始化器集合初始化器

2009-11-11 15:29:15

ADO初始化

2019-11-04 13:50:36

Java数组编程语言

2009-09-08 09:48:34

LINQ初始化数组

2010-07-28 10:22:33

FlexApplica

2023-05-04 08:06:27

Spring循环依赖

2009-09-25 16:55:08

Hibernate初始

2021-12-26 00:08:35

C++初始化列表

2009-09-18 11:15:52

C#数组初始化
点赞
收藏

51CTO技术栈公众号