Spring容器(bean工厂,应用程序上下文和Web应用程序上下文)有3个主要接口。
当我们使用术语“ root / app context和web application context ”时,我们可以这样说:
答案 0 :(得分:4)
BeanFactory vs ApplicationContext
Spring doc很好地解释了他们 -
ApplicationContext
界面增强了BeanFactory
更加面向框架的风格的功能
您将拥有BeanFactory
在ApplicationCotnext
中可以执行的所有功能。事实是ApplicationContext
接口扩展ListableBeanFactory
接口。您会发现它们之间存在比较差异here
ApplicationContext 和 WebApplicationContext
ApplicationContext
是每个Web的根上下文配置 应用。但是可以有多个WebApplicationContext
ApplicationContext
。换句话说,每个DispatcherServlet
都与之相关联 单WebApplicationContext
。
为了更好地理解,您可以找到更多here。
现在可以说 - Web应用程序上下文由web applicationcontext接口和servletcontext接口表示?
实际上WebApplicationcontext
扩展ApplicationContext
,旨在与标准ServletContext
一起使用,以便能够与容器进行通信。像
public interface WebApplicationContext extends ApplicationContext {
ServletContext getServletContext();
}
是的,根上下文或应用程序上下文由ApplicationContext
接口表示。而且你知道BeanFactory
与此的区别。