ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用“容器”来表述它更容易理解一些,ApplicationContext则是“应用的容器”了,Spring把Bean放在这个容器中,在需要的时候,用getBean方法取出。
??WebApplicationContext继承自ApplicationContext,webApplicationContext(也有可能是其父context,而正真?的webApplicationContext是由DispatcherServlet初始化的。)是由?contextLoaderListener或者contextLoaderServlet加载web.xml中的param参数?contextConfigLocation初始化的。
??过滤器中无法用spring注入,当想得到bean时只能手动获取ApplicationContext,如ApplicationContext?ac?=?new?FileSystemXmlApplicationContext("applicationContext.xml");但这样会重新加载spring配置文件,这样会极大影响性能所以我们可在session中取出webApplicationContext从而获取bean实例
??当Servlet初始化了webApplicationContext后,即可在ServletContext取出
WebApplicationContext??ctx?=?WebApplicationContextUtils.getRequiredWebApplicationContext(req.getSession().getServletContext());
ctx.getBean("");