Java Spring里getBean方法的实现
生活随笔
收集整理的這篇文章主要介紹了
Java Spring里getBean方法的实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
位于DefaultListableBeanFactory:getBean
AbstractBeanFactory.java: doGetBean
Beans.xml里如無特殊聲明,定義的bean默認(rèn)都是singleton,故執(zhí)行310行的getSingleton:
雖然方法名稱為get,但是注釋寫得很清楚,如果Bean尚未被注冊,就register a new one:
準(zhǔn)備創(chuàng)建名為dataSource的singleton bean了:
奧妙在這個singletonFactory里:
終于看到createBean了:
在AbstractAutowireCapableBeanFactory里,執(zhí)行doCreateBean:
createBeanInstance:
使用反射機(jī)制,準(zhǔn)備實例化Bean實例:
調(diào)用無參構(gòu)造函數(shù):
BeanUtils.instantiateClass:
調(diào)用棧:
開始執(zhí)行構(gòu)造函數(shù)了:
bean實例創(chuàng)建完畢:
要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號"汪子熙":
總結(jié)
以上是生活随笔為你收集整理的Java Spring里getBean方法的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java Spring Beans.xm
- 下一篇: java美元兑换,(Java实现) 美元