Spring 生态与源码
从 IoC 容器和 Bean 生命周期进入 AOP、事务、Spring MVC、Spring Boot、WebFlux 与运行时选型。
IoC、DI 与 Spring 核心组件全景
从对象创建和依赖组装问题理解 IoC 与 DI,并建立 BeanFactory、ApplicationContext、BeanDefinition 的核心地图。
手写最小 IoC 容器
用不到百行 Java 实现 BeanDefinition 注册、类型匹配、构造器注入和单例缓存,理解容器最小闭环。
ApplicationContext 启动主线:读懂 refresh 模板流程
以 AbstractApplicationContext.refresh 为入口,串联 BeanFactory 准备、扩展点调用、单例创建、事件发布和失败清理。
Bean 生命周期与后置处理器
定位 Bean 实例化、属性填充、Aware 回调、初始化、后置处理和销毁,并解释代理在哪一步出现。
构造器推断与依赖解析
解释构造器选择、按类型候选、Primary、Qualifier、集合注入与 Optional 的解析规则和错误诊断。
三级缓存能解决什么循环依赖
区分构造器循环、属性循环和代理早期引用,解释三级缓存的职责以及为什么循环依赖首先是设计信号。
配置类、组件扫描与条件装配
追踪 ConfigurationClassPostProcessor 如何解析配置类、组件扫描、Bean、Import 与 Conditional。
Spring 扩展点实战:Registrar、Factory、PostProcessor 与 Listener
按扩展发生的阶段选择 ImportBeanDefinitionRegistrar、FactoryBean、工厂后置处理器、Bean后置处理器和事件监听器。
AOP 代理创建与调用链
比较 JDK 动态代理和类代理,解释切点、通知、拦截器链、自调用以及代理对象的真实类型。
声明式事务的传播、隔离与失效场景
从 TransactionInterceptor 解释事务传播、隔离、回滚规则、自调用失效、异步线程和远程调用边界。