spring mvc applicationcontext.xml和spring servlet.xml的区别

spring mvc applicationcontext.xml和spring servlet.xml的区别,spring,spring-mvc,Spring,Spring Mvc,在我的项目中,我们有一个SpringMVC应用程序。 它既有applicationcontext.xml,也有-servlet.xml配置文件。 Bean定义分布在两个文件中 我想知道什么时候有了-servlet.xml,是否需要applicationcontext.xml 请在此区域提供任何解释。您称之为applicationContext.xml的是根应用程序上下文(当您需要应用程序范围的访问它们时,您将bean放在那里)以及您称之为[servlet]-xml是一种特定的Springbean

在我的项目中,我们有一个SpringMVC应用程序。 它既有applicationcontext.xml,也有-servlet.xml配置文件。 Bean定义分布在两个文件中

我想知道什么时候有了-servlet.xml,是否需要applicationcontext.xml


请在此区域提供任何解释。

您称之为
applicationContext.xml
的是根应用程序上下文(当您需要应用程序范围的访问它们时,您将bean放在那里)以及您称之为
[servlet]-xml
是一种特定的Springbean配置xml,用于SpringMVC的DispatcherServlet

applicationContext.xml将具有核心Spring组件的Bean定义

project-servlet.xml将具有单个servlet的bean定义


-servlet.xml可以引用applicationContext.xml,反之亦然。

servlet上下文特定于servlet,应用程序上下文为整个应用程序共享。因此,当您在servlet-context.xml中定义Bean时,该Bean可用于该特定servlet的上下文,但当您在application-context.xml中定义Bean时,它可用于整个应用程序。因此,如果您有多个dispatcherServlet,那么可以为每个servlet创建单独的servlet上下文。但是应用程序只有一个应用程序上下文

,因此如果我有一个bean类,并且它只在[servlet]-context.xml中定义,那么我无法使用getBean方法获取它的实例。对吗?如果您是从ServletContext访问WebApplicationContext,那么您是对的,这是因为ContextLoaderListener(默认情况下)将在您的WEB-INF目录中查找名为“applicationContext.xml”的Spring配置文件。请告诉我如何使用getBean(或其他)获取servlet-context.xml bean…正如您使用的那样,如果…您能告诉我从servlet context.xml获取bean的其他方法吗…webapplicationcontext是否只能访问applicationcontext.xml..它是否也可以访问servlet-context.xml?.使用webapplicationcontext(或任何其他类)访问servlet-context.xml我们该怎么办?我认为如果不扩展DispatcherServlet来发布自己的上下文,这是不可能的。。。但是请随意问另一个问题!可能重复的