手撸 IoC 框架
我的 IoC 框架 GitHub 地址:https://github.com/tangtang233/myioc
今天看了前辈犀利豆的博客,复习了一遍 IoC 原理,算是能说出来 IoC 原理的大概了(终于不是似懂非懂的哑巴程序员了)。
这里还是建议大家,如果自己想能记住以下体系的知识点的话,还是要跟着这种技术文章动动手,把代码撸一遍。在过程中,及时你仍然记不住一些细节,但大体上的一定会有所总结。
这里我自己总结一下 IoC 的原理。方便自己回忆关键词。
我理解的 IoC 框架原理,首先是为了解决多个类互相引用关系的。
实现 IoC 框架,主要是依赖 Java 反射机制(项目中也使用了 cglib 工具包)。
基本原理是:
- 初始化 IoC 框架
- 读取配置数据(json 和 XML 都可以),配置文件中记录的是类的信息
- 把这些数据转化为 IoC 框架能识别的数据结构(这个数据结构在 Spring 中叫做 BeanDefinition)
- 利用数据结构依次实例化
- 注入这些对象的依赖关系
想详细了解的童鞋,可以点击下方传送门去前辈的博客中拜读:
博客原文地址:https://www.xilidou.com/2018/01/08/spring-ioc/
原项目 GitHub 地址:https://github.com/diaozxin007/xilidou-framework
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于