目录
一、创建容器
1、类路径加载配置文件
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
2、文件路径加载配置文件
ApplicationContext ctx = new FileSystemXmlApplicationContext("D:\\applicationContext.xml");
3、加载多个配置文件
ApplicationContext ctx = new ClassPathXmlApplicationContext("bean1.xml", "bean2.xml");
二、获取bean
1、使用bean名称获取
BookDao bookDao = (BookDao) ctx.getBean("bookDao");
2、使用bean名称获取并指定类型
BookDao bookDao = ctx.getBean("bookDao", BookDao.class);
3、使用bean类型获取
BookDao bookDao = ctx.getBean(BookDao.class);
三 、容器类层次结构图
四、BeanFactory初始化
类路径加载配置文件
Resource resources = new ClassPathResource("applicationContext.xml");
BeanFactory bf = new XmlBeanFactory(resources);
BookDao bookDao = bf.getBean("bookDao", BookDao.class);
bookDao.save();
BeanFactory创建完毕后,所有的bean均为延迟加载
五、核心容器总结
1、容器相关
BeanFactory是IoC容器的顶层接口,初始化BeanFactory对象时,加载的bean延迟加载
ApplicationContext接口是Spring容器的核心接口,初始化时bean立即加载
ApplicationContext接口提供基础的bean操作相关方法,通过其他接口扩展其功能
ApplicationContext接口常用初始化类
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
2、bean
3、依赖注入相关