1.简介
AnnotationConfigWebApplicationContext是常用的上下文容器类,在spring boot没有流行的时候,以前用tomcat在web.xml配置
spring容器时,如果使用Java注解的配置类,一般都会使用这个上下文类
顾名思义,AnnotationConfig代表注解配置,Web代表具有web功能,可以访问ServletContext。这是这个上下文的基本功能。
之前在spring源码解析之AbstractApplicationContext#refresh()方法刷新上下文过程一文中讨论过spring容器的启动过程
在refresh方法中,有一步为获取最新的上下文工厂
/** 告诉子类刷新内部{@link BeanFactory}。获取最新的bean工厂,读取bean定义在这一步实现 */
ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();
/**
* 告诉子类刷新内部bean工厂。
* @return 新鲜的BeanFactory实例
* @see #refreshBeanFactory()* @参见#getBeanFactory()
*/
protected ConfigurableListableBeanFactory obtainFreshBeanFactory() {
refreshBeanFactory();
r