ApplicationContext接口扩展自BeanFactory
ApplicationContext除了可以完成BeanFactory的载入Bean定义,装配Bean外,还提供了以下功能
1.提供了稳步解析工具,包括对国际化的支持
2.提供了载入文件资源的通用方法,如载入图片
3.可以向注册为监听器的Bean发送事件
4.BeanFactory工厂延迟载入所有的Bean,直到getBean()方法被调用时才会创建Bean;ApplicationContext 在启动后预载入所有单实例Bean,其他的Bean是在getBean方法被调用时才创建的。
常用的ApplicationContext有以下几种
ApplicationContext context = new FileSystemXmlApplicationContext("c:/foo.xml");
ApplicationContext context = new ClassPathXmlApplicationContext("foo.xml");
区别是,前者只能在指定的路径中寻找 foo.xml。后者可以在整个类路径(包括JAR文件)中寻找foo.xml