日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

关于Spring Bean实例注册的流程

發(fā)布時間:2024/4/13 javascript 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于Spring Bean实例注册的流程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、定義好Spring的配置文件;

2、通過Resource對象將Spring配置文件進行抽象,抽象成一個具體的Resource對象(如ClassPathResource);

3、定義好將要使用的Bean工廠(各種BeanFactory);

4、定義好XmlBeanDefinitionReader對象,并將工廠對象作為參數(shù)傳遞進去,從而構(gòu)建好二者之間的關(guān)聯(lián)關(guān)系;

5、通過XmlBeanDefinitionReader對象讀取之前所抽取出的Resource對象;

6、流程開始進行解析;

7、針對Xml文件進行各種元素以及元素屬性的解析,這里面,真正的解析是通過BeanDefinitionParserDelegate對象來完成的(委托模式);

8、通過BeanDefinitionParserDelegate對象在解析XML文件時,又使用到了模板方法設計模式(pre,process,posr);

9、當所有的bean標簽元素都解析完畢后,開始定義一個BeanDefinition對象,該對象是一個非常重要的對象,里面容納了一個Bean相關(guān)的所有屬性;

10、BeanDefinition對象創(chuàng)建完畢后,Spring又會創(chuàng)建一個BeanDefinitionHolder對象來持有這個BeanDefinition對象;

11、BeanDefinitionHolder對象主要包含兩部分內(nèi)容:beanName和BeanDefinition;

12、工廠會將解析出來的Bean信息存放到內(nèi)部的一個ConcurrentHashMap中,該Map對象的鍵是beanName,值是BeanDefinition對象;

13、調(diào)用Bean解析完畢的觸發(fā)動作,從而觸發(fā)相應的監(jiān)聽器的方法的執(zhí)行(觀察者模式)。

?

?

總結(jié)

以上是生活随笔為你收集整理的关于Spring Bean实例注册的流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。