1. 程式人生 > >如何確定Spring容器之間的關係

如何確定Spring容器之間的關係

  我們知道,在一個大的專案中,不可能只有一個Spring的IOC容器,它可能會有多個IOC容器,如一個配置Service層的bean,一個配置controller層的bean。但是我們在controller層中使用@autowired註解注入了service層的bean,所以service的bean就必須要在controller的bean之前已經注入到IOC容器中,且service的bean所在的IOC容器必須是父容器parent,controller的bean所在的IOC容器必須是子容器,這樣controller的bean才可以引用service的bean。正常來說,我們在FrameworkServlet類的方法createWebApplicationContext中可以看到,Spring會將Maven工程中的resources下的IOC容器設定成父容器,而將WEB-INF下的容器統一 的認定前面那個容器為父容器。需要注意的是:子容器可以引用父容器的內容,父容器不可以應用子容器的內容。

  Spring容器之間的關係:Spring容器之間是互相包含的關係,即不同Spring容器之間的bean是可以互相引用。

  Spring和SpringIOC容器之間的關係:Spring容器包含SpringIOC容器,是Spring父容器,即Spring父容器不可以引用子容器的bean,而SpringMVC子容器可以引用父容器的bean。

  SpringMVC容器預設的名稱時servelet-dispacher.xml,存放於WEB-INF下,這也間接的證明了resources下的IOC容器是WEB-INF下的IOC容器的父容器。

相關推薦

如何確定Spring容器之間關係

  我們知道,在一個大的專案中,不可能只有一個Spring的IOC容器,它可能會有多個IOC容器,如一個配置Service層的bean,一個配置controller層的bean。但是我們在controller層中使用@autowired註解注入了service層的bean,

初學者對Servlet、JSP及Web容器之間關係的理解

Servlet就是一個Java程式,一個Servlet應用程式經常包含一個或者多個Servlet也就是當用戶傳送請求,例如提交表單,那麼需要一個或多個Servlet協同作用,而訪問的jsp頁面也是一個S

Docker(三十三)k8s 監控以及容器之間呼叫關係

主要是觀察各個pod 之間的呼叫關係,選用weave-scope 安裝 curl https://cloud.weave.works/k8s/scope.yaml\?k8s-version\=1.8.13 -sL -o scope.yaml curl 

確定用例之間關係 - Identify Relationships Among Use Cases

用例關聯 角色和用例之間的關聯在用例圖中用實線表示。每當一個actor參與一個用例描述的互動時就存在一個關聯。 延伸 (Extend) 有些功能可以選擇觸發。在這種情況下,將使用擴充套件關係並將擴充套件規則附加到它。需要記住的是,即使擴充套件用例未被呼叫,基本用例也應該能夠

spring boot和spring cloud之間的版本關係

兩者關係:1、Spring boot 是 Spring 的一套快速配置腳手架,可以基於spring boot 快速開發單個微服務;Spring Cloud是一個基於Spring Boot實現的雲應用開發工具;2、Spring boot專注於快速、方便整合的單個個體,Spring Cloud是關注全域性的服務治

spring容器和springmvc容器,以及web容器關係

說到spring和springmvc,其實有很多工作好多年的人也分不清他們有什麼區別,如果你問他專案裡用的什麼MVC技術,他會說我們用的spring和mybatis,或者spring和hibernate。在潛意識裡會認為springmvc就是spring,之前我也是這麼認為的,哈哈。   雖然springMV

Spring 與 SpringMVC 容器父子關係引出的相應問題

1)關係說明 spring 與 springmvc 父子關係:spring (父容器),springmvc (子容器) springmvc(子)--- 可呼叫 --> spring(父) 中的 bean,屬性值等 但 spring(父)-- 不

Tomcat中容器是什麼以及容器容器之間的數量關係

Tomcat容器到底是什麼 學java有一小段時間了,一直使用Tomcat,也知道Tomcat是一個大的Servlet容器,裡面還有許多子容器,容器之間都是相互巢狀的。也看過一下接收Tomcat的文章,都是一幅圖,圖中有好多個框框相互巢狀,表示容器與容器之間的相互巢狀,也沒什麼說明,把我看得雲裡霧裡的。所以要

spring和springmvc父子容器關係

大家都知道,在spring的配置中要分開配置service層的註解掃描,以及springmvc變現層的註解掃描,如下: <!-- 掃描載入Service實現類 --> <context:component-scan base-package="com.x

web容器 web伺服器 servlet/jsp容器 之間的區別和關係

今天學習tomcat時發現一篇寫的比較好的文章,故分享給大家 Web伺服器(軟體): 替代者有Nginx Web容器: 提供了動態網頁服務。但同時也能提供靜態網頁的解析服務,與前者有整合,但功能不及前者。 --------------------------

Web容器、Servlet容器Spring容器、SpringMVC容器之間的關系

org 自動 har dwr cer times 配置信息 很多 一個 以下內容為個人理解,如有誤還請留言指出,不勝感激! Web容器 web容器(web服務器)主要有:Apache、IIS、Tomcat、Jetty、JBoss、webLogic等,而Tomcat

跟著剛哥學習Spring框架--Spring容器(二)

contain 系統 框架 blog 關系 文件路徑 mage 文件系統 技術分享 Spring容器 啟動Spring容器(實例化容器)   -- IOC容器讀取Bean配置創建Bean實例之前,必須對它進行實例化(加載啟動),這樣才可以從容器中獲取Bean的實例並使用

Spring容器啟動過程

spring啟動搞了一年多的Java了,每個項目都在用Spring,這幾天沒事看了看Spring源碼,總結了下Spring容器的啟動過程,想把它記錄下來,免得忘了spring容器的啟動方式有兩種:1、自己提供ApplicationContext自己創建Spring容器2、Web項目中在web.xml中配置監聽

vector和list容器之間的復制

lis copy st3 pac log iterator using list ostream #include <iostream> #include <list> #include <string> #inclu

理解容器之間的連通性 - 每天5分鐘玩轉 Docker 容器技術(34)

docker 教程 容器 通過前面小節的實踐,當前 docker host 的網絡拓撲結構如下圖所示,今天我們將討論這幾個容器之間的連通性。兩個 busybox 容器都掛在 my_net2 上,應該能夠互通,我們驗證一下:可見同一網絡中的容器、網關之間都是可以通信的。my_net2 與默認 bri

[轉]使用@Test 也可以從spring容器中獲取依賴註入

oca fig article ring1 detail ice 如果 text resource 轉自:http://blog.csdn.net/u010987379/article/details/52091790 @RunWith(SpringJUnit4Cla

Docker使用link建立容器之間的連接

sql數據庫 sta 環境變量 safe latest ima pat 服務器 minutes 我們在使用Docker的時候,經常可能需要連接到其他的容器,比如:web服務需要連接數據庫。按照往常的做法,需要先啟動數據庫的容器,映射出端口來,然後配置好客戶端的容器,

centos7下安裝docker(12.3容器之間的連通性)

daemon 2.3 es2017 命令 selinux bridge 之前 -- 9.png 我們接著盜圖,如下: 在這張圖上,可以看到,如果兩個容器使用同一個bridge,那麽兩個容器之間是互相能通的 可以看到兩個容器在同一個bridge下是可以互相ping通的

spring容器加載完畢做一件事情(利用ContextRefreshedEvent事件)

ref refresh display ras 方案 splay 區分 容器 and 關鍵字:spring容器加載完畢做一件事情(利用ContextRefreshedEvent事件) 應用場景:很多時候我們想要在某個類加載完畢時幹某件事情,但是使用了spring管理對象,我

基於反射啟動Spring容器

.get markdown create mat context author cati pen static 基於反射啟動Spring容器 package com.maple.test; import org.springframework.context.Applic