60分钟徒手撸出Spring框架:土法造炮篇
请务必加入微信群,讲座时间更新,优惠信息,讲座资料会在群里发放
一 前言
只要是Java开发,就无法逃脱Spring的范畴。无论是Spring MVC,或是Spring Boot,都广泛的应用在我们开发中。可以说,Spring构成了我们项目的基石。但即使你每天面对它,你对Spring的原理了解吗?你会好奇它到底是如何做的么?
或许你厌倦了每天的增删改查,希望能接触一些更底层的知识。所以你你去看过
的Spring的源码,先不说能否看懂,事实上,只是阅读
源码可能不会有任何提高,就如同读再多的小说也不会提高你文学修养一样,语言,是一门需要实践的学科。毕竟,根据Kolb模型,写一遍必定比你看100遍还要有用。
市面上非常多说要拿Spring源码来学习的言论,因为IT市场人太多,导致必须要用这些高级知识
来筛选。但事实上Spring实在是不适合拿来学习,因为它封装的太过于完善了,考虑的过于周全,明明一句话就能干完的事,他偏要用一篇文章来表达。学它就如同小学生学八股文,云里雾里、不知所云。
本课程将拉取Spring最核心的IOC功能,运用jdk最基础
的知识点,手把手带领你完成一个简版Spring,并提供源码,供大家演练。
二 涉及知识点(较为基础)
- java反射机制的大量运用
- 自定义注解的实现
- 文件的递归查询
三 讲解路线
按照Spring IOC的加载流程
- 找到bean
- 载入并注册bean
- 注入bean
1 找到bean
找到bean在什么地方,是对BeanDefinition的资源定位,是由ResourceLoader通过统一的Resource接口来完成,这个接口对各中形式的Resource都提供了统一接口,比如Xml,比如annotation。而这些都是由ResourceLoader来完成的
2 载入并注册bean
找到bean后,将bean注册到我们的IOC容器中。Spring是通过一些ApplicationContext来完成的,比如FileSystemXmlApplicationContext, ClassPathXmlApplicationContext以及我们最常见的XmlWebApplicationContext,读取之后将bean注册到IOC容器中,简单来说,就是把读取的bean都放到一个map中。
3 注入bean
当我们要用bean时,由IOC容器自动的注入进去。
本课程会模拟这个过程,从bean的发现开始,直到注入bean,使用jdk反射的相关知识,在60分钟内撸出一个简单版的Spring架构,并完成一个完整的调用过程。值得收藏,而后慢慢实现。