SpringIOC的实现

97 阅读1分钟
public void testIoc2() {ApplicationContext applicationContext = new AnnotationConfigApplicationContext( SpringConfig.class);Phone phone = applicationContext.getBean(Phone.class);System.out.println(phone.toString());}

或者

public void testIoc() {   
    ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");  
    Phone phone = applicationContext.getBean(Phone.class);  
    System.out.println(phone.toString());
}

一般我们通过

注解实现的启动类AnnotationConfigApplicationContext或者ClassPathXmlApplicationContext来启动,这是两种不同的方式来实现配置信息的加载。

XML实现的启动类ClassPathXmlApplicationContext

会使用AbstractRefreshableApplicationContext容器中的实现,该容器中实现xml配置文件定位,并通过BeanDefinition载入和解析xml配置文件。

注解的启动类AnnotationConfigApplicationContext

通过ConfigurationClassPostProcessor的后置处理器完成对bean的加载