Spring AOP源码之ProxyFactory源码解析
本文从源码角度解析 Spring AOP 中 ProxyFactory 的实现,重点说明其在 JDK 动态代理与 CGLIB 之间的选择逻辑,以及 AopProxy、MethodInterceptor 链的构建与执行流程,帮助理解 Spring AOP 代理创建与方法拦截的内部机制。

浏览 spring 相关文章。
8 篇文章
本文从源码角度解析 Spring AOP 中 ProxyFactory 的实现,重点说明其在 JDK 动态代理与 CGLIB 之间的选择逻辑,以及 AopProxy、MethodInterceptor 链的构建与执行流程,帮助理解 Spring AOP 代理创建与方法拦截的内部机制。

本文从动态代理入手,系统梳理了 Spring AOP 中几个最核心的概念和实现方式:先用 CGLIB / JDK 动态代理说明“代理”究竟改变了什么,再通过 ProxyFactory、Advice、Advisor、Pointcut 等 API 串起 Spring AOP 的底层机制,最后再回到注解驱动的使用方式,帮助读者把「怎么用」和「为什么这样设计」连接起来。

在Spring框架中,FactoryBean是一个特殊的Bean,它并不直接返回实例,而是通过实现getObject方法来生成或修饰对象。本文介绍了FactoryBean的概念及其与BeanFactory的区别,探讨了它在Spring容器中的重要作用,并举例说明如何使用FactoryBean来简化复杂对象的实例化过程。

通过HelloWorld示例深入探讨了 Spring 的底层核心原理。文章解释了 Spring 是如何通过 AnnotationConfigApplicationContext 创建 Bean、如何进行依赖注入、如何管理 Bean 的生命周期以及如何通过 AOP 实现动态代理。此外,还介绍了 Spring 事务的处理机制以及如何推断构造方法。通过本篇文章,你将更清楚地了解 Spring 的工作机制及其强大之处。

梳理 Spring 核心概念:Bean、BeanDefinition、BeanFactory 及其重要实现(DefaultListableBeanFactory)、BeanDefinitionReader 与扫描器、ApplicationContext 及常用实现、BeanPostProcessor、BeanFactoryPostProcessor、FactoryBean 的机制与示例,以及扫描过滤与元数据读取要点。

本文分析了在使用 Logback 作为日志框架时,日志路径中出现 IS_UNDEFINED 的常见原因,通常是由于未正确配置或未定义相关变量(如 ${LOG_PATH})。文章介绍了该问题的排查方式以及解决方案,帮助开发者更好地掌握 Logback 的配置机制。

Spring Boot 打包成 JAR 后,ClassPathResource 里的文件不在文件系统,不能用 getFile() 获取,应改用 getInputStream以流方式读取资源,避免 “cannot be resolved to absolute file path” 报错。

记录如何下载并重命名 Spring 5.3.10 源码、使用 Gradle 编译并在 IntelliJ IDEA 中创建测试模块,验证注解扫描与依赖注入可正常运行,并给出 Gradle 构建日志与注意事项。
