更新時間:2020-06-20 12:28:32 來源:動力節(jié)點(diǎn) 瀏覽2087次
今天咱們要學(xué)習(xí)的是SpringMVC框架中Spring與Web環(huán)境集成的內(nèi)容,主要涉及的知識點(diǎn)有ApplicationContext應(yīng)用上下文獲取方式,Spring提供獲取應(yīng)用上下文的工具,導(dǎo)入Spring集成web的坐標(biāo),配置ContextLoaderListener監(jiān)聽器以及通過工具獲得應(yīng)用上下文對象。下面我們來看看具體的學(xué)習(xí)內(nèi)容吧~
1、ApplicationContext應(yīng)用上下文獲取方式
應(yīng)用上下文對象是通過new ClasspathXmlApplicationContext(spring配置文件)方式獲取的,但是每次從容器中獲得Bean時都要編寫new ClasspathXmlApplicationContext(spring配置文件),這樣的弊端是配置文件加載多次,應(yīng)用上下文對象創(chuàng)建多次。
在Web項目中,可以使用ServletContextListener監(jiān)聽Web應(yīng)用的啟動,我們可以在Web應(yīng)用啟動時,就加載Spring的配置文件,創(chuàng)建應(yīng)用上下文對象ApplicationContext,在將其存儲到最大的域servletContext域中,這樣就可以在任意位置從域中獲得應(yīng)用上下文ApplicationContext對象了。
2、Spring提供獲取應(yīng)用上下文的工具
上面的分析不用手動實現(xiàn),Spring提供了一個監(jiān)聽器ContextLoaderListener就是對上述功能的封裝,該監(jiān)聽器內(nèi)部加載Spring配置文件,創(chuàng)建應(yīng)用上下文對象,并存儲到ServletContext域中,提供了一個客戶端工具WebApplicationContextUtils供使用者獲得應(yīng)用上下文對象。
所以我們需要做的只有兩件事:
一是在web.xml中配置ContextLoaderListener監(jiān)聽器(導(dǎo)入spring-web坐標(biāo));二是使用WebApplicationContextUtils獲得應(yīng)用上下文對象ApplicationContext。
3、導(dǎo)入Spring集成web的坐標(biāo)
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.0.5.RELEASE</version>
</dependency>
4、配置ContextLoaderListener監(jiān)聽器
<!--全局參數(shù)-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!--Spring的監(jiān)聽器-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
5、通過工具獲得應(yīng)用上下文對象
ApplicationContext applicationContext=
WebApplicationContextUtils.getWebApplicationContext(servletContext);
Object obj=applicationContext.getBean("id");
最后,總結(jié)一下Spring與Web環(huán)境集成的知識要點(diǎn):Spring集成web環(huán)境步驟是先配置ContextLoaderListener監(jiān)聽器,然后使用WebApplicationContextUtils獲得應(yīng)用上下文。
以上就是動力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對“Java并發(fā)教程:Spring與Web環(huán)境集成總結(jié)”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743