源码
元 :)
这个作者很懒,什么都没留下…
展开
-
【Spring源码开整】05. Spring Bean生成
Spring Bean生成1.目标 自然是来看看spring的bean生成流程的源码 但是这流程就算不关注大量细节,也真的很长,后面考虑把这一篇再拆一拆2.查找入口private static void testSpring() { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); Object alice = context.ge原创 2020-06-01 22:41:59 · 165 阅读 · 0 评论 -
【Spring源码开整】04. Spring BeanDefinition加载
Spring BeanDefinition加载1. 目标 经过两轮简单的手撕代码,最为核心几个类的作用已经基本解释清楚了。之前一直强调写代码是为了帮助理解,这里我们来看看spring BeanDefinition的加载流程。Bean的加载安排在下一篇。 源码的阅读,老实是去理解设计者的思维。老实说不会是很简单有趣的事情,当时会有收获。spring的源码体现着优秀的设计原则与设计模式。2. 准备与入口 读源码最好是本地把源码跑起来,网上已经有很多基于各种IDE+gradle把源码跑起来的博客,原创 2020-05-27 14:41:29 · 141 阅读 · 0 评论 -
【Spring源码开整】03. 手写IOC容器--面向对象拆分
1. 目标 在手写IOC容器–实现功能以面向过程的方式实现了spring IoC容器的基本思路,下面我们以面向对象的思维方式来对该部分的代码进行拆分,进一步模拟spring的IoC实现。 重复强调下自己实现该部分只是为了帮助阅读Spring源码时的理解学习spring的代码结构,不是完整的写一遍Spring,所以仍然只有一些小编理解上的核心逻辑,各位看官也就当个参考就好。2. Spring IoC中的一些重要接口与类说明 后面的实现会劲量参考着Spring的继承体系来完成以便于在阅读源码时有相原创 2020-05-22 00:02:24 · 113 阅读 · 0 评论 -
【Spring源码开整】02. 手写IOC容器--实现功能
1. 目标 以面向过程的方式完成基本的IoC容器下一篇基于该实现完成spring基础BeanFactory的改造。下面的代码只会完成最为基础的部分,异常处理多种标签的解析不写入该实现中。 手写IoC是为了帮助理解Spring IoC容器。2. Spring Xml的封装分析 Spring IoC容器帮助使用者完成了大量的基础工作,是Spring最为核心的部分。下面先来看看一个基本Xml封装 每个标签封装成一个BeanDefinition对象记录类的类型,id,初始化方法,作用域,以及字段原创 2020-05-18 22:04:57 · 128 阅读 · 0 评论 -
【Spring源码开整】01. Spring概念梳理
Spring源码开整该系列以手写spring framework中的核心部分帮助理解源码1. 目标为什么需要spring搞清楚spring全家桶常用技术搞清楚spring框架的主要职责搞清楚spring框架和springboot的区别搞清楚spring框架中各模块的作用搞清楚spring中的核心概念,基础容器、高级容器、ioc容器、ioc、aop、di、bop、循环依赖等2. 概念解析2.1 为什么需要spring Spring是个一站式解决方案,使创建Java企业级应用程序变原创 2020-05-16 20:11:07 · 217 阅读 · 0 评论