Bean的定义和初始化SpringIoC容器是两大步骤,Bean的定义,然后再初始化SpringIoC容器和依赖注入
1.1 Bean的定义分为3步:
(1) Resource 定位, 这步是Spring IoC容器根据开发者的配置,进行资源定位,在Spring的开发中,我们可以通过XML或者注解方式进行配置。
(2)BeanDefinition的载入,这个时候只是将我们在Resource中配置我们需要的Bean信息。
(3) BeanDefinition的注册,这个过程就是将BeanDefinition的信息发布到SpringIoC容器中,注意此时并没有对应Bean的实例创建。
完成这三步,Bean就在Spring IoC容器中被定义了,而没有被初始化。对于初始化和依赖注入,Spring Bean中有一个配置选项——lazy-init。其含义就是是否初始化Spring Bean。
属性 |
属性值 |
作用 |
默认值(实际值) | default(false) | SpringIoC 自动初始化Bean |
(可)更改值 | true | 当我们使用Spring IoC容器的getBean()方法获取它时才会进行Bean的初始化,完成依赖注入。 |