project/spring/spring源码解读/spring01启动.md

945 B
Raw Blame History

第一章启动

说明

  1. 使用spring版本5.3.5
  2. 起始类ClassPathXmlApplicationContext可以使用org.springframework.context.support.GenericApplicationContext自定义读取配置
GenericApplicationContext ctx = new GenericApplicationContext();
XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader(ctx);
xmlReader.loadBeanDefinitions(new ClassPathResource("applicationContext.xml"));
PropertiesBeanDefinitionReader propReader = new PropertiesBeanDefinitionReader(ctx);
propReader.loadBeanDefinitions(new ClassPathResource("otherBeans.properties"));
ctx.refresh();
MyBean myBean = (MyBean) ctx.getBean("myBean");

解读ClassPathXmlApplicationContext

  1. 从构造函数中点击追踪父类默认加载org.springframework.context.support.AbstractApplicationContext
  2. 加载构造函数中传入的参数String... locations循环处理路径locations
  3. 是否刷新加载到的内容