更新時(shí)間:2021-09-13 10:48:52 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1262次
web.xml中配置一個(gè)ServletContextListener
即:spring提供的ContextLoaderListener
web.xml
(1)在ContextLoaderListener的contextInitialized回調(diào)方法中調(diào)用initWebApplicationContext 初始化Spring的容器
ContextLoaderListener
(2)調(diào)用父類ContextLoader的實(shí)現(xiàn)
ContextLoader
其中ContextLoader的成員變量context是一個(gè)WebApplicationContext
成員變量 context
(3)調(diào)用configureAndRefreshWebApplicationContext,讀取applicationContext.xml,初始化spring容器;然后將初始化好的容器放入ServletContext域中
initWebApplicationContext
(4)在方法configureAndRefreshWebApplicationContext中實(shí)際讀取spring配置文件,初始化容器
configureAndRefreshWebApplicationContext
(5)customizeContext方法實(shí)際初始化spring的context
configureAndRefreshWebApplicationContext
(6)調(diào)用ApplicationContextInitializer的initialize方法,解析配置文件,創(chuàng)建bean
customizeContext
(7)創(chuàng)建bean。
發(fā)現(xiàn)BeanDefinitionDsl類竟然是一個(gè)kotlin文件!spring5.0源碼中大量出現(xiàn)kotlin文件,看來(lái)kotlin會(huì)逐漸成為主流?
BeanDefinitionDsl
以上就是動(dòng)力節(jié)點(diǎn)小編介紹的"Web項(xiàng)目中Spring容器的創(chuàng)建過(guò)程簡(jiǎn)要分析",希望對(duì)大家有幫助,想了解更多可查看Spring框架教程。動(dòng)力節(jié)點(diǎn)在線學(xué)習(xí)教程,針對(duì)沒(méi)有任何Java基礎(chǔ)的讀者學(xué)習(xí),讓你從入門到精通,主要介紹了一些Java基礎(chǔ)的核心知識(shí),讓同學(xué)們更好更方便的學(xué)習(xí)和了解Java編程,感興趣的同學(xué)可以關(guān)注一下。
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743