![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring源码解析
文章平均质量分 96
Spring源码解析
三木加两木
2021加油!拿到大厂offer!!!
展开
-
Spring AOP---深入剖析AOP注解实现原理
文章目录前言1.概述2.Spring如何集成AspectJ AOP3.AOP通知链如何生成4.何时进行AOP动态代理以及动态代理的方式5.通知链的调用过程6.后续前言阅读本文之前建议先掌握的前置知识:@Import注解的使用和实现原理Bean的生命周期1.概述Spring AOP有常用的两种方式,一种是使用XML的方式,另一种是使用注解的方式。本文将详细的分析注解方式的实现原理。将会从如下几个点展开。Spring如何集成AspectJ AOPAOP通知链如何形成何时进行AOP动态代理原创 2021-05-26 16:27:28 · 1445 阅读 · 6 评论 -
Spring @ComponentScan注解用法和原理解析
文章目录1.概述2.@ComponentScan3.源码分析1.概述Spring是如何通过注解的形式将Bean注入到Spring容器当中的呢?答案就在@ComponentScan注解上,该注解告诉Spring要去哪里去寻找Bean。通过这篇博客将学习到如何正确使用@ComponentScan,并分析其底层是如何实现。2.@ComponentScan@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)@Documented@原创 2021-03-02 18:28:43 · 1939 阅读 · 2 评论 -
SpringBoot自动装配原理分析和实现自定义启动器
文章目录1.概述2.自动装配原理分析2.1@SpringBootConfiguration2.2@EnableAutoConfiguration3.自定义启动器1.概述SpringBoot的自动装配,减少了原先需要编写xml配置文件或java配置类。本文将分析SpringBoot自动装配的原理(版本是2.3.5)。从注解的作用到源码分析,再到自定义SpringBoot启动器。2.自动装配原理分析自动装配的实现和这个注解有密切的关联。该注解是个复合注解,里面包含了三个关键的注解@SpringBoo原创 2021-02-25 13:32:30 · 2297 阅读 · 14 评论 -
Spring中@Import注解的使用和实现原理(超详细!!!)
文章目录1. 概述2. 初识@Imprt注解3. @Import注解的使用3.1 普通类注入Spring容器的方式3.2 实现了ImportSelector接口的类注入Spring容器的方式3.3 实现了ImportBeanDefinitionRegistrar接口的类注入Spring容器的方式4. 源码分析4.1 解析@Import注解的时机4.2 3种不同类型的类如何通过@Import注解注入到Spring容器当中源码解析5. 后续1. 概述@Import 是 Spring 基于 Java 注解配置原创 2021-01-27 23:21:37 · 28822 阅读 · 27 评论 -
Spring IOC---AOP代理对象生成的时机
文章目录1.概述2.前置知识3.Spring AOP代理对象生成的时机3.1非提前生成代理对象3.2 提前生成代理对象4. 为什么需要两种动态代理的时机1.概述Spring AOP可以采用注解或者xml配置的方式实现,那么在spring的生命周期当中,是在什么时候生成的代理对象呢?本文就AOP代理对象生成的时机进行介绍。不清楚spring生命周期的读者可以先阅读另一篇博客《Spring IOC—Bean的生命周期》。2.前置知识BeanPostProcessor接口的作用简单的讲就是在一个对象原创 2020-12-15 20:52:37 · 9472 阅读 · 25 评论 -
Spring 循环依赖(图例+源码分析)
文章目录1.循环依赖概述1.1 相关集合说明2.Spring 循环依赖源码分析1.循环依赖概述什么是循环依赖呢?如下图所示,有两个或两个以上的对象之间引用,也就是A对象中有属性B 引用了B对象,B对象中有属性C 引用了C对象,而C对象中有属性A 引用了A对象。构成一个环状结构,这就是循环依赖。对于普通的java对象而言,对象之间的循环依赖可以通过set方式设置之间的引用关系。而SpringBean中的循环依赖就复杂的很多,单例Bean的创建过程是交给Spring管理的,并不是简简单单的通过set就可原创 2020-09-23 15:18:28 · 1462 阅读 · 3 评论 -
Spring Bean的生命周期
文章目录1.概述2. Bean的生命周期流程图3.相关方法/接口介绍3.1 BeanFactoryPostProcessor3.2 InstantiationAwareBeanPostProcessor3.2.1 postProcessBeforeInstantiation3.2.2 postProcessAfterInstantiation3.2.3 postProcessProperties3.2.4 postProcessBeforeInitialization3.2.5 postProcessAf原创 2020-09-22 15:49:49 · 1535 阅读 · 0 评论 -
Spring扩展之BeanDefinitionRegistryPostProcessor
文章目录前言1.概述1.1重点类介绍1.1.1 MapperProxyFactory1.1.2 MapperFactoryBean1.1.3 MapperScannerRegistrar1.1.4 MapperScannerConfigurer1.1.5 ClassPathMapperScanner2.mybatis中如何将接口变成对象3.mybatis如何将代理对象交给spring管理3.1将对象交给Spring管理的方式3.1.1 api手动添加3.1.2 @Bean3.1.3 factoryBean3原创 2020-09-15 15:12:31 · 821 阅读 · 0 评论 -
Spring IOC---invokeBeanFactoryPostProcessors源码分析
文章目录1.概述2.准备工作。3.源码调试invokeBeanFactoryPostProcessors3.1.getBeanFactoryPostProcessors()3.2.invokeBeanFactoryPostProcessors(3.2.1 先来介绍一下这个方法中出现的集合。3.2.2 源码调试分析3.2.2.1 处理手动添加的 实现了BeanDefinitionRegistryPostProcessor接口的类3.2.2.2 处理Spring自带的后置处理器ConfigurationClas原创 2020-09-06 16:36:44 · 6296 阅读 · 1 评论