一:什么是IoC
IoC:Inversion of Control,控制反转的意思,获得依赖对象的过程由自身管理变为了由IOC容器主动注入,由容器来管理对象的生命周期。
二:时序图
三:浅析
ioc可以大致分为定位,加载,注册三个阶段。
1.定位阶段:
首先是定位阶段,源码的入口在ClassPathXmlApplicationContext的构造函数,在构造函数中调用setConfigLocations()解析Bean定义资源文件的路径,处理多个资源文件字符串数组。然后再调用refresh(),refresh()方法中通过obtainFreshBeanFactory()获取ConfigurableListableBeanFactory,obtainFreshBeanFactory()方法中调用refreshBeanFactory()方法,refreshBeanFactory()方法中调用createBeanFactory()方法创建IOC容器并且调用loadBeanDefinitions(beanFactory)方法,进入到加载阶段。
2.加载阶段
loadBeanDefinitions(De
文章评论