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的初始化,完成依賴注入。 |