亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Spring父容器與Spring MVC子容器是如何體現出父子關系的

Spring父容器與Spring MVC子容器是如何體現出父子關系的

阿波羅的戰車 2018-10-24 07:46:21
平常的子類繼承父類通過extends關鍵字來實現,那么Spring父容器與Spring MVC子容器是如何體現出父子關系的呢? 容器指的是一個類嗎?Spring容器是哪個類,Spring MVC容器又是哪個類?
查看完整描述

1 回答

?
莫回無

TA貢獻1865條經驗 獲得超7個贊

所謂容器,就是上下文,在這同一個上下文里,大家可以共享一些東西。

Spring應用啟動時,會先讀取web.xml文件,調用ContextLoaderListener創建Spring容器,也就是你說的父容器。

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

Listener創建完之后,開始創建Servlet:

    <servlet>
        <servlet-name>SpringMVC</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    </servlet>

這時候這個DispatcherServlet開始試圖創建SpringMVCApplicationContext,它先找剛才由上面那個ContextLoaderListener創建的SpringApplicationContext,找到后,把SpringApplicationContext作為參數傳給DispatcherServletApplicationContextsetParent方法,這樣SpringMVC的容器就變成了Spring容器的兒子。

因為在SpringMVC這個子容器創建的時候指定了它的Spring父容器,所以兒子能找到父親,所以SpringMVC這個子容器里的Bean可以調用父容器的服務,而父容器不知道有這個兒子的存在(一個不負責任的父親),父容器里的Bean不能調用子容器里的服務。


查看完整回答
1 反對 回復 2018-10-24
  • 1 回答
  • 0 關注
  • 1031 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號