當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring5源码 - 06 Spring Bean 生命周期流程 概述 01
生活随笔
收集整理的這篇文章主要介紹了
Spring5源码 - 06 Spring Bean 生命周期流程 概述 01
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- Bean生命周期概述
- Demo
- finishBeanFactoryInitialization(beanFactory)
- 核心流程
Bean生命周期概述
說到Spring Bean的生命周期,其實就是探究Spring Bean實例化經歷哪些步驟了
本篇博文先給個整體的解讀,下文將從源碼上來探究Spring Bean的生命周期過程。
Demo
先跑通一個小demo
finishBeanFactoryInitialization(beanFactory)
前面幾篇博文,我們細說了 invokeBeanFactoryPostProcessors(beanFactory);
主要是完成掃描,但bean并沒實例化,什么時候實例化的呢?
繼續跟跟看
看到了執行完finishBeanFactoryInitialization以后對象的構造方法被打印了,這里只能說明這個對象被實例化了,但是不是bean 對象也完成了實例化,這個就不好說了,但大概率是的,所以還需要進入到方法中繼續跟進。
有一點需要明確:
Java對象不一定是bean, bean一定是一個java對象。 bean 受到spring的管理,有 自己的生命周期。
怎么能驗證bean有么有被實例化呢?
從ac.getBean(Bean1.class) 跟進去 , 知道找到
Object singletonObject = this.singletonObjects.get(beanName); private final Map<String, Object> singletonObjects = new ConcurrentHashMap<>(256);那就找 ,singletonObjects .重新debug
核心流程
接下來 從源碼上分析這些流程
總結
以上是生活随笔為你收集整理的Spring5源码 - 06 Spring Bean 生命周期流程 概述 01的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring5源码 - 05 invok
- 下一篇: Spring5源码 - 07 Sprin