本文共 1072 字,大约阅读时间需要 3 分钟。
本节我们介绍Spring容器(即ApplicationContext对象)创建的三种方式。
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
第二种:文件系统路径获得配置文件 [绝对路径]
ApplicationContext context = new FileSystemXmlApplicationContext("D:\\SpringFrameWork讲解\\src\\beans.xml");
第三种:使用BeanFactory(了解)
ApplicationContext context = (ApplicationContext) new XmlBeanFactory(new FileSystemResource("D:\\SpringFrameWork讲解\\src\\beans.xml"));
我们来对比一下BeanFactory与ApplicationContext。
BeanFactory 采取延迟加载,第一次getBean时才会初始化BeanApplicationContext是对BeanFactory扩展,提供了更多功能。
举个例子,在UserDaoImpl中添加一个构造方法
public UserDaoImpl(){ System.out.println("被创建了"); }
测试BeanFactory:
BeanFactory beanFactory = new XmlBeanFactory(new FileSystemResource("D:\\SpringFrameWork讲解\\src\\beans.xml"));测试ApplicationContext:
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");对比发现BeanFactory在调用getBean获取对象是UserDaoImpl才会被创建,而ApplicationContext对象一旦创建就会去创建UserDaoImpl对象。
转载地址:http://stlzi.baihongyu.com/