美文网首页
IOC大致介绍

IOC大致介绍

作者: 大黑跟小白的日常 | 来源:发表于2019-01-09 22:46 被阅读56次

    IOC

    原理

    动态加载对象实例,动态装配;

    IOC xml 版本 原理

    容器启动阶段:

    1、加载配置文件信息;——依靠ResouceLoader载并且解析资源(xml文件),封装成Resouce;

    2、装配BeanDefinition;——利用BeanDefinitionReader读取Resource 转换为BeanDefinition,BeanDefition含有这个Bean的Class对象(类信息对象)(并非Bean本身,为后续根据Class生成具体实例Bean做准备)。然后注册BeanDefinition. 就是把信息存放到一个concurrentHashMap中,key为bean的名字,value为beandefinition,等待实例化。

    到这里时,可以实现容器启动阶段的定制操作。

    可以通过实现BeanFactoryPostProcessor接口来进行定制,就是获得BeanDefinition,修改BeanDefinition;

    Bean实例化阶段:

    3、利用bean的class对象反射机制生成bean对象;

    4、根据BeanDefinition中属性信息,实例化属性对象,装配依赖;

    相关文章

      网友评论

          本文标题:IOC大致介绍

          本文链接:https://www.haomeiwen.com/subject/vvugrqtx.html