如何阅和修改读框架源代码

本文介绍了阅读和修改框架源代码的方法,包括获取源码、理解框架宏观结构、通过微观细节反推宏观,以及在实际项目中如何修改源代码。建议开发者从宏观到微观地阅读源码,例如在Mybatis框架中了解其数据源获取和SQL执行过程。同时,文章提到了两种修改源代码的方式,并指出阅读如Tomcat、Spring、Mybatis和HashMap等源码对于提升技能的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不管对于那个段位的 Developer 来说,读源码都是一件好处颇多的事情,特别于初学者而言,这能迅速的吸纳优秀框架精华代码营养,迅速成长。

阅读源码其实要有一些功底,比如熟悉Java26种常用的设计模式、反射、泛型。

   1.获取框架源代码,运行调试读源码。大多主流的框架源码都会放到https://github.com/上(国内有些也托管到码云上了),下载代码时主要选择"tags"或"release"中获取相应的版本,不要获取master或者dev版本,

因为这些版本还不稳定,可能会跑不起来,影响程序运行。程序能跑起来,对于程序员来说,就很容易Debug分析框架了。

2.从宏观到微观,先从整体把握,再到细处。有些复杂的框架,可能不知道从哪里开始读取,入口在哪,这时就需要先从宏观去把握。例如Mybatis,不知从哪读起,那么就得先把握

mybatis是什么,做什么的。mybatis是一个ORM框架,是一个应用与数据库交互的一个中间框架,那么它的作用就是获取数据源,翻译Java程序,然后对数据库进行操作,

那么就可以带着这种宏观的理解去读源码,如怎么获取数据源的,怎么获取程序员写的SQL语句,怎么执行SQL语句,执行后的结果怎么返回给程序。

3.从微观反推宏观。有时就想看下一个框架是如何实现特定功能时,就可按此方法读源码。还是读mybatis源码,比如我就想知道我写的一个SQL语句框架是怎么获取并得到。

那么可以在项目中搜索mapper.xml中的sql,看下是在哪个类哪个方法处理,然后一步步跟下去。

4.连想带猜。优秀的框架在命名都是有一定含义的,可以猜测某些类某些方法是干什么用的,然后再去验证。

   看懂源码后我们就可以开始修改源代码。

1.把框架源码下载后,直接修改,然后发布jar包。这种办法的弊端是,我们改好某个版本的jar包,过了一段时间,公司决定用最新版本,可最新版本还是没有修复某个Bug,

这时,你又得再次修复,再次发布,很麻烦。

2.引用某个框架后,在项目中直接新建一个要修改的类,包名也要一样,比如要修改com.mybatis.pojo.User,那么在自己的项目中新建一个和官方一个包名和类名的类,然后再修改,

这样项目中有该类,引用的Jar包中也有该用,项目会优先使用本项目中的类,这样再更新官方的Jar,修改仍有效果。

  本地在传统企业呆久了,天天拧螺丝,最近才开始研究优秀框架,希望对5年以上的朋友有所帮助。要想成为高手tomcat,spring,mybatis,,hashMap源码必须读起。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值