未完成
1.什么是ioc
引用百度百科:
可以把IoC模式看作工厂模式的升华,把IoC容器看作是一个大工厂,只不过这个大工厂里要生成的对象都是在XML文件中给出定义的。利用Java 的“反射”编程,根据XML中给出的类定义生成相应的对象。从实现来看,以前在工厂模式里写死了的对象,IoC模式改为配置XML文件,这就把工厂和要生成的对象两者隔离,极大提高了灵活性和可维护性。
控制反转:依赖对象的获得被反转了
Spring的本质是一个bean工厂-->map存储接口(存储bean实例).
2.如何创建ioc容器
3.ioc容器是如何初始化Bean实例
知识点:
bean factory 与 ApplicationContext 区别:
1.加载时机不同:bean factory 第一次get bean 才会初始化,ApplicationContext 是在加载applicationcontext.xml 时就创建对象实例(只对单例对象 初始化一次)
2.功能不同:
ApplicationContext
- 支持信息源,可以实现国际化。(实现MessageSource接口)
- 访问资源。(实现ResourcePatternResolver接口,这个后面要讲)
- 支持应用事件。(实现ApplicationEventPublisher接口)
3.ApplicationContext 是bean factory的实现类