方老司

同济大学计算机系,先后担任500强过CISCO开发、中金所开发、有渔学堂技术合伙人,RabbitMQ中文rabbitmq.org.cn联合发起人,现专职云原生服务的研究

请务必加入微信群,讲座时间更新,优惠信息,讲座资料会在群里发放

一 前言

只要是Java开发,就无法逃脱Spring的范畴。无论是Spring MVC,或是Spring Boot,都广泛的应用在我们开发中。可以说,Spring构成了我们项目的基石。但即使你每天面对它,你对Spring的原理了解吗?你会好奇它到底是如何做的么?

或许你厌倦了每天的增删改查,希望能接触一些更底层的知识。所以你你去看过的Spring的源码,先不说能否看懂,事实上,只是阅读源码可能不会有任何提高,就如同读再多的小说也不会提高你文学修养一样,语言,是一门需要实践的学科。毕竟,根据Kolb模型,写一遍必定比你看100遍还要有用。

市面上非常多说要拿Spring源码来学习的言论,因为IT市场人太多,导致必须要用这些高级知识来筛选。但事实上Spring实在是不适合拿来学习,因为它封装的太过于完善了,考虑的过于周全,明明一句话就能干完的事,他偏要用一篇文章来表达。学它就如同小学生学八股文,云里雾里、不知所云。

本课程将拉取Spring最核心的IOC功能,运用jdk最基础的知识点,手把手带领你完成一个简版Spring,并提供源码,供大家演练。

二 涉及知识点(较为基础)

  1. java反射机制的大量运用
  2. 自定义注解的实现
  3. 文件的递归查询

三 讲解路线

按照Spring IOC的加载流程

  1. 找到bean
  2. 载入并注册bean
  3. 注入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架构,并完成一个完整的调用过程。值得收藏,而后慢慢实现。

购买须知:
1、本课程为虚拟产品,一经购买,概不退款(讲师特别声明除外)
2、在使用过程中,遇到任何问题,请邮件联系:pr@sifou.com

版权声明:讲者在本产品上发表的全部原创内容(包括但不限于文字、视频、图片等)著作权均归讲师本人所有。未经讲师授权许可,观众用户不得以任何载体或形式使用讲师的内容。

3.914条评价

快乐的派大星 · 2019-02-25

是真的垃圾,完全就是把自己平时写代码给录了下来。

程序员进阶之路 · 2018-07-31

虽然最开始十分钟感觉没准备好,但确实是干货,不错点个赞

Hussein · 2018-04-25

简单易懂

shihty5 · 2018-04-13

听的好累。。

方老司 · 2018-04-20

编程真的很难

LortSir · 2018-04-09

看完后我对spring有了全新的认识,以前只是简单地知道spring自动帮开发人员实例化对象,但是不知道是如何实现的。
视频是标清,如果是高清无码就最好了

方老司 · 2018-04-20

是不是没有全屏

亢龙 · 2018-03-27

挺清楚的~要是前面语言在流程点会更好~

方老司 · 2018-03-28

谢谢。貌似“太干了”的建议还是挺多的,之后湿一点吧,干湿结合

陈龙飞 · 2018-03-27

老师讲的不错,这种撸代码的十分适合我~

Lovebugs · 2018-03-19

这课讲的真的不值10块钱,差评!!

方老司 · 2018-03-27

你可以说明细节,比如老板骂你“你tm是个sb”,他应该说“你连spring ioc都看不懂,jdk源码都不知道,话也说不清楚,还是趁早滚蛋吧”

NickFayne · 2018-03-17

非常nice,就应该直接撸代码

ButtonWang · 2018-03-06

挺好,给了个思路,简单易懂