自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 问答 (1)
  • 收藏
  • 关注

原创 Spring5源码-事件

注册事件监听器,也就是把所有的事件监听器解析后管理起来,方便后续查找。发布事件也就是找到符合指定事件的事件监听器,循环调用即可。

2024-11-18 15:44:36 551

原创 Spring5源码-AutowiredAnnotationBeanPostProcessor

2、接下来调用MergedBeanDefinitionPostProcessor接口的postProcessMergedBeanDefinition方法完成对@Autowired标注的字段或方法进行解析,并保存到injectionMetadataCache的Map中。比如有以下示例代码,解析到一个参数的构造函数,发现依赖C,然后去创建Bean C,最终通过ctor.newInstance(argsWithDefaultValues)完成实例化。到这里,依赖注入就分析完了。

2024-11-13 17:58:21 927

原创 Spring5源码-BeanPostProcessor接口分析

1、BeanPostProcessor用于 Bean 初始化前后添加自定义逻辑2、InstantiationAwareBeanPostProcessor用于Bean实例化前后添加自定义逻辑3、SmartInstantiationAwareBeanPostProcessor在继承InstantiationAwareBeanPostProcessor的基础上添加了返回获取目标对象的类型,构造器,以及对Bean的引用回调。

2024-11-11 17:15:14 1018

原创 Spring5源码-ConfigurationClassPostProcessor

承接上文前文已经介绍了ConfigurationClassPostProcessor的功能,并且在invokeBeanFactoryPostProcessors(beanFactory)方法中会被调用,接下来分析它是如何运作的。1、获取所有已经注册的BeanDefinition,判断是否为配置候选类(是否有@Configuration、@Component、@ComponentScan、@Import、@ImportResource、方法上有@Bean,只要符合其中一个,就是配置候选类)

2024-11-07 15:31:11 804

原创 Spring5源码-BeanFactoryPostProcessor接口分析

1、在refresh方法的invokeBeanFactoryPostProcessors(beanFactory)中,实现了BeanFactoryPostProcessor和BeanDefinitionRegistryPostProcessor接口的类都会被调用。

2024-11-01 11:02:33 973

原创 Spring5源码-AnnotationConfigApplicationContext分析

1、Spring底层采用BeanDefinition来存储Bean的元数据信息,为后期创建Bean提供Bean的相关信息。2、AnnotationConfigApplicationContext用于将普通的类转化为BeanDefinition对象并注册到Spring容器中,自身不提供任何功能,都是借助于AnnotatedBeanDefinitionReader和ClassPathBeanDefinitionScanner来实现的。

2024-10-30 09:50:17 723 1

转载 RabbitMQ学习笔记

笔记来自:https://www.bilibili.com/video/BV1mN4y1Z7t9?

2023-12-10 16:37:32 204

原创 Redis学习笔记

redis学习笔记

2023-12-09 22:50:49 52

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除