doocs /source-code-hunter

😱 从源码层面,剖析挖掘互联网行业主流技术的底层实现原理,为广大开发者 “提升技术深度” 提供便利。目前开放 Spring 全家桶,Mybatis、Netty、Dubbo 框架,及 Redis、Tomcat 中间件等

★ 23,125⑂ 4,205
JavaCreated 2019-10-28schunter.doocs.org
23,125
stars
+-4+-4+-7
4,205
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions

README

互联网公司常用框架源码赏析








“技术深度” 与 “技术广度”是对开发者来说最为重要的两个维度,本项目致力于从源码层面,剖析和挖掘互联网行业主流技术的底层实现原理,为广大开发者 “提升技术深度” 提供便利。

加入我们,一起通读互联网行业主流框架及中间件源码,成为强大的 “源码猎人”,目前开放的有 Spring 全家桶、Mybatis、Netty、Dubbo 框架,及 Redis、Tomcat 中间件等,让我们一起开拓新的领地,揭开这些源码的神秘面纱。

本项目主要用于记录框架及中间件源码的阅读经验、个人理解及解析,希望能够使阅读源码变成一件简单有趣,且有价值的事情,抽空更新中... (如果本项目对您有帮助,请 watch、star、fork 素质三连一波,鼓励一下作者,谢谢)

 网站

https://schunter.doocs.org

 Spring 系列

 IoC 容器

- BeanDefinition 的资源定位过程
- 将 bean 解析封装成 BeanDefinition
- 将 BeanDefinition 注册进 IoC 容器
- 依赖注入(DI).md)
- BeanFactoryPostProcessor
- BeanPostProcessor
- Spring BeanFactory 源码解析
- 循环依赖

 AOP

- AOP 源码实现及分析
- JDK 动态代理的实现原理解析
- Spring AOP 如何生效(Spring AOP 标签解析)

 SpringMVC

- IoC 容器 在 Web 环境 中的启动
- SpringMVC 的设计与实现
- SpringMVC 跨域解析
- Spring-MVC-HandlerMapping
- Spring-mvc-MappingRegistry

 SpringJDBC

- 努力编写中...

 Spring 事务

- Spring 与事务处理
- Spring 声明式事务处理
- Spring 事务处理的设计与实现
- Spring 事务管理器的设计与实现
- Spring 事务解析

 Spring 源码故事(瞎编版)

- 面筋哥 IoC 容器的一天(上).md)

 Spring 整体脉络

- 16 张图解锁 Spring 的整体脉络

 Spring 类解析

- Spring 自定义标签解析
- Spring Scan 包扫描
- Spring 注解工具类
- Spring 别名注册
- Spring 标签解析类
- Spring ApplicationListener
- Spring messageSource
- Spring 自定义属性解析器
- Spring 排序工具

- Spring-import 注解
- Spring-定时任务
- Spring StopWatch
- Spring 元数据
- Spring 条件接口

- Spring MultiValueMap
- Spring MethodOverride
- Spring BeanDefinitionReaderUtils
- Spring PropertyPlaceholderHelper

- Spring PropertySource
- Spring PlaceholderResolver

- Spring-AnnotationFormatterFactory
- Spring-Formatter
- Spring-Parser
- Spring-Printer

 Spring5 新特性

- Spring5-spring.components 解析

 Spring RMI

- Spring RMI

 Spring Message

- Spring EnableJMS
- Spring JmsTemplate
- Spring MessageConverter

 SpringBoot

- SpringBoot run 方法解析
- SpringBoot 配置加载解析
- SpringBoot 自动装配
- SpringBoot ConfigurationProperties
- SpringBoot 日志系统
- SpringBoot ConditionalOnBean

 Spring Cloud

- Spring Cloud Commons 源码
- Spring Cloud OpenFeign 源码
- Spring Cloud Gateway 源码

 SpringSecurity

- SpringSecurity 请求全过程解析
- SpringSecurity 自定义用户认证
- SpringSecurity 流程补充

 MyBatis

 基础支持层

- 反射工具箱和 TypeHandler 系列
- DataSource 及 Transaction 模块
- binding 模块
- 缓存模块

 核心处理层

- MyBatis 初始化
- SqlNode 和 SqlSource
- ResultSetHandler
- StatementHandler
- Executor 组件
- SqlSession 组件

 类解析

- Mybatis-Cache
- Mybatis-log
- Mybatis-Reflector
- Mybatis-Alias
- Mybatis-Cursor
- Mybatis-DataSource
- Mybatis-DynamicSqlSource
- Mybatis-MapperMethod
- Mybatis-MetaObject
- Mybatis-MethodSignature
- Mybatis-ObjectWrapper
- Mybatis-ParamNameResolver
- Mybatis-SqlCommand
- Mybatis-GenericTokenParser

 Netty

 网络 IO 技术基础

- 把被说烂的 BIO、NIO、AIO 再从头到尾扯一遍
- IO 模型
- 四种 IO 编程及对比

 JDK1.8 NIO 包 核心组件源码剖析

- Selector、SelectionKey 及 Channel 组件

 Netty 粘拆包及解决方案

- TCP 粘拆包问题及 Netty 中的解决方案

 Netty 多协议开发

- 基于 HTTP 协议的 Netty 开发
- 基于 WebSocket 协议的 Netty 开发
- 基于自定义协议的 Netty 开发

 基于 Netty 开发服务端及客户端

- 基于 Netty 的服务端开发
- 基于 Netty 的客户端开发

 Netty 主要组件的源码分析

- ByteBuf 组件
- Channel 组件 和 Unsafe 组件
- EventLoop 组件
- ChannelPipeline 和 ChannelHandler 组件
- Future 和 Promise 组件

 Netty 高级特性

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON