本文在介紹關(guān)于Spring Bean生命周期的管理方法的基礎(chǔ)上,重點探討了其具體步驟,步驟簡單易上手操作,文章內(nèi)容步步緊湊,希望大家根據(jù)這篇文章可以有所收獲。
步驟1:實例化一個Bean,也就是我們通常說的new;
步驟2:按照Spring上下文對實例化的Bean進(jìn)行配置,也就是IOC注入;
步驟3:如果這個Bean實現(xiàn)了BeanNameAware接口,會調(diào)用它實現(xiàn)的setBeanName(String beanId)方法,此處傳遞的是Spring配置文件中Bean的ID;
步驟4:如果這個Bean實現(xiàn)了BeanFactoryAware接口,會調(diào)用它實現(xiàn)的setBeanFactory(),傳遞的是Spring工廠本身(可以用這個方法獲取到其他Bean);
步驟5:如果這個Bean實現(xiàn)了ApplicationContextAware接口,會調(diào)用;setApplicationContext(ApplicationContext)方法,傳入Spring上下文,該方式同樣可以實現(xiàn)步驟4,但比4更好,以為ApplicationContext是BeanFactory的子接口,有更多的實現(xiàn)方法;
步驟6:如果這個Bean關(guān)聯(lián)了BeanPostProcessor接口,將會調(diào)用postProcessBeforeInitialization(Object obj, String s)方法,BeanPostProcessor經(jīng)常被用作是Bean內(nèi)容的更改,并且由于這個是在Bean初始化結(jié)束時調(diào)用After方法,也可用于內(nèi)存或緩存技術(shù);
步驟7:如果這個Bean在Spring配置文件中配置了init-method屬性會自動調(diào)用其配置的初始化方法;
步驟8. 如果這個Bean關(guān)聯(lián)了BeanPostProcessor接口,將會調(diào)用postAfterInitialization方法。需要注意:以上工作完成以后就可以用這個Bean了,那這個Bean是一個single的,所以一般情況下我們調(diào)用同一個ID的Bean會是在內(nèi)容地址相同的實例;
步驟9:當(dāng)Bean不再需要時,會經(jīng)過清理階段,如果Bean實現(xiàn)了DisposableBean接口,會調(diào)用其實現(xiàn)的destroy方法;
步驟10:最后,如果這個Bean的Spring配置中配置了destroy-method屬性,會自動調(diào)用其配置的銷毀方法。
以上就是Spring Bean生命周期的管理方法介紹,詳細(xì)使用情況還需要大家自己親自動手使用過才能領(lǐng)會。如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)頁標(biāo)題:SpringBean生命周期的管理方法-創(chuàng)新互聯(lián)
分享路徑:http://www.rwnh.cn/article20/iiico.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、外貿(mào)網(wǎng)站建設(shè)、定制開發(fā)、搜索引擎優(yōu)化、網(wǎng)站收錄、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容