ApplicationContext的中文意思是“应用前后关系”,由BeanFactory接口扩展而来,除了包含BeanFactory的所有功能之外,在国际化支持、资源访问(如URL和文件)、事件传播等方面进行了良好的支持。
ApplicationContext初始化时如果配置文件在类路径下,优先使用ClassPathXmlApplicationContext进行初始化工作。
如果配置文件放置在系统路径下,则用FileSystemXmlApplicationContext实现类完成初始化。
ApplicationContext初始化与BeanFactory初始化的区别在于 ApplicationContext初始化时即实例化所有的的单实例bean;BeanFactory在初始化容器时未实例化bean,待到访问bean时方才初始化。
web.xml文件对applicationContext的引用
ApplicationContext初始化时如果配置文件在类路径下,优先使用ClassPathXmlApplicationContext进行初始化工作。
ApplicationContext cxt = new ClassPathXmlApplicationContext("applicationContext.xml");
如果配置文件放置在系统路径下,则用FileSystemXmlApplicationContext实现类完成初始化。
ApplicationContext cxt = new FileSystemXMLApplicationContext("beans.xml");
ApplicationContext初始化与BeanFactory初始化的区别在于 ApplicationContext初始化时即实例化所有的的单实例bean;BeanFactory在初始化容器时未实例化bean,待到访问bean时方才初始化。
web.xml文件对applicationContext的引用
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
WEB-INF/classes/applicationContext-security.xml
</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>