【深度剖析】spring1.0源码--准备工作

B站上录制有对应的视频,有需要的小伙伴可以了解一下,b站地址:https://www.bilibili.com/video/BV1bY41167rg/?spm_id_from=333.999.0.0

课程前言

作为JAVA开发者,几乎每天都与spring为伴,通过百度或者idea工具可以快速搭建一个spring项目,在此基础上进行开发。我们能够熟练使用spring,但它对于我们来说就像一个黑盒子,在运行的过程中做了哪些动作,可能有很多小伙伴都不太清楚,而接下来的旅程我们将要从spring源码来解密它到底做了什么。

版本问题:

​你可能有些奇怪,Spring已经出到了6.0 +版了,为什么还要讲1.0这个老古董?

​阅读源码的核心是把握主干,就像一棵树,框架的总体流程是树干,细节是叶子,枝干长得粗壮厚实,叶子才能茂盛,阅读源码切忌陷入细节,看到一个方法一直跟进去,最后迷失了方向。

​回想一下,自己阅读源码的惨痛记忆,是不是使用debug,看到方法就按F7,不断深入,一步步陷入泥泞,再也出不来,最后放弃了。另外一个可怕的点是不看注释,认为英文看不懂或者注释不重要,直接忽略,Spring的注释特别友好,人家害怕你看不懂,写得特别详尽,不看注释就是一种损失。(设计是树根,流程是主干,细节是叶子)

  1. 1.0版本的代码量少,要把握主干跟简单,没有太多复杂的扩展功能,学起来要简单很多,不容易陷入细节。
  2. 高版本是在低版本的基础上进行优化和扩展,与低版本一脉相承,总体的设计思想差不多,学完低版本看高版本将事半功倍。

源码地址我放在评论区,有需要的自取。

spring 1.0版本,源码地址:https://sourceforge.net/projects/springframework/files/springframework/1.0 M1

课程内容:

分5部分内容(画图):

  1. Spring容器(IoC)启动过程,如何实现单例、解决循环依赖、反射以及使用了哪些设计模式
  2. Aop实现原理,我们都知道aop使用动态代理原理,但忽略了责任链模式,在这块内容中,我们将一起看看spring是怎么做的
  3. 事务管理,事务传播特性
  4. JDBC,使用jdbc需要自己处理很多异常,而spring是怎么帮我们屏蔽掉这些
  5. Spring MVC,使用spring做web项目居多,这块内容可以了解是怎么跟tomcat结合起来,以及接受到请求之后如何分发等内容。

以上5点就是接下来要分享内容。那么我们现在开始spring源码之旅。

下载源码:

  1. 打开浏览器,输入源码地址:https://sourceforge.net/projects/springframework/files/springframework/1.0 M1

  2. 点击下载

  3. 放到本地路径,解压文件夹
    在这里插入图片描述

  4. 导入idea,打开idea,找到菜单栏 File -> open,然后选择解压出来的源代码文件
    在这里插入图片描述
    在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值