入口
Spring5官方推荐使用注解的方式来进行Spring的开发,所以其入口
ApplicationContext ac = new AnnotationConfigApplicationContext(ApConfig.class);、
源码
public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) {
//先执行父类的无参构造器,初始化DefaultListableBeanFactory并且赋值给beanFactory
//调用本类的午餐构造器 this();
this();
//将传入的类进行注册
register(annotatedClasses);
//刷新
refresh();
}
看传参数( Class<?>… annotatedClasses) 可以传入多个使用了@Configuration注解的注解类
public class AnnotationConfigApplicationContext extends GenericApplicationContext implements AnnotationConfigRegistry
首先看this(); 源码如下:
/**
* Create a new AnnotationConfigApplicationContext that needs to be populated
* through {@link #register} calls and then manually {@linkplain #refresh refreshed}.
*/
public AnnotationConfigApplicationContext() {
//会隐式调用父类的构造方法,初始化DefaultListableBeanFactory
//
this.reader = new AnnotatedBeanDefinitionReader(this);
this.scanner = new ClassPathBeanDefinitionScanner(this);
}