03-Spring-IOC容器的设计

Spring-IOC容器的设计主要基于BeanFactory和ApplicationContext两个接口。

BeanFactory的源码:

03-Spring-IOC容器的设计

它的子接口及关键实现类:

03-Spring-IOC容器的设计

我们常用的接口是ApplicationContext接口,而ClasspathXmlApplicationContext这个类时最常用的子类。

spring容器的关键要点:

1,我们可以通过以下代码来初始化spring容器:

ApplicationContext applicationContext =new ClassPathXmlApplicationContext("spring-context.xml");

2,Spring-IOC容器对Bean的管理分为两步,分别为定义和初始化及依赖注入

2.1定义:

首先,根据开发者提供的配置(XML或注解),进行资源(Resource)定位

其次,将资源(Resource)定位到的信息保存到Bean定义中(BeanDefinition)

最后,将BeanDefinition的信息注册到Spring-IOC容器中。

注意:以上只是完成了Bean的定义,但没有完成初始化工作。

2.2 初始化

Spring-IOC容器默认会在定义后自动完成初始化,除非把lazy-init设置为true,那么需要直到执行get时,才会完成Bean的初始化。不过一般来说,我建议采用默认false

猜你喜欢

转载自blog.csdn.net/happy_coding_life/article/details/80339537