基于注解实现的 简易IOC

首先申明,这不是spring的IOC原理,跟Spring IOC比起来,这个是婴儿。

大体步骤介绍

    1、读取默认配置文件内容;

    2、获取配置项:扫描包路径

    3、根据指定包路径,读取包下所有Class对象,存入List;

    4、遍历Class集合,如果带有注解(约定好的需要实例化的注解),则进行实例化。将 Class——Bean 一 一存入Map;

    5、遍历Map键值对,获取Class信息中的Field,遍历field,判断是否isAnnotationPresent(注解类.class);

    6、获取带有注解的field的类型(可能是接口类),获取这个类型的子类(选指定实现类,如果未指定,选第一个);

    7、根据beanField类型Class,获取Map 中 instance;

    8、依赖注入,beanField.set(被注入bean, 注入的bean);

全篇是 基于 黄勇 老师的《从零开始写Web框架》源码 IOC篇 的个人 解读。码云可搜 smart-framework

MVC解读待续

AOP解读待续

你可能感兴趣的:(基于注解实现的 简易IOC)