代码改变世界

文章分类 -  spring源码解读

spring源码之字段填充逻辑

2025-10-27 16:44 by Spiderman25, 0 阅读, 收藏,
摘要: 总结: 1先获取被Autowired、Value、Inject注解的字段和方法 2从容器中获取到对应的值 3利用反射设置 /** * Actually create the specified bean. Pre-creation processing has already happened * 阅读全文

spring源码下载教程

2025-09-13 18:40 by Spiderman25, 18 阅读, 收藏,
摘要: 这次以spring v5.3.9版本为例子,讲解如何搭建阅读spring的环境 1、源码下载 下载地址:https://github.com/spring-projects/spring-framework 建议用clone进行下载,因为zip包的方式在idea导入项目时会存在报错的问题。 2、gr 阅读全文

spring监听器原理

2024-01-23 18:07 by Spiderman25, 41 阅读, 收藏,
摘要: jdk中的 spring中的 jdk中的 spring中的 以容器加载完为例 ServletWebServerApplicationContext 容器上下文中发布事件 容器中持有广播器的引用 现在看下是如何找到监听器的 先用事件类型与来源类型作为key,从缓存中取,取到了就直接返回。如果没有取到, 阅读全文

ConfigurationProperties原理

2024-01-19 18:03 by Spiderman25, 44 阅读, 收藏,
摘要: registerBeanDefinition:979, DefaultListableBeanFactory (org.springframework.beans.factory.support) register:131, ConfigurationPropertiesBindingPostPro 阅读全文

ImportBeanDefinitionRegistrar原理

2024-01-19 17:04 by Spiderman25, 4 阅读, 收藏,
摘要: 在ConfigurationClassPostProcessor类中会回调BeanDefinitionRegistryPostProcessor完成注册自定义bean的流程。org.springframework.context.annotation.ConfigurationClassParser 阅读全文

ConfigurationClassPostProcessor解读

2024-01-14 16:02 by Spiderman25, 5 阅读, 收藏,
摘要: 首先说重点,这个类发生在调用BeanFactoryPostProcessors时,作用就是从spring容器中找中所有的bean定义,如果bean定义带上compomentScan这个注解,则把这个注解配置的包下的spring类加载到容器的bean定义中。 调用栈如下: registerBeanDe 阅读全文