复制代码
为懒人提供无限可能,生命不息,code不止
人类感性的情绪,让我们知难行难
首页
前端
后台
数据库
运维
资源下载
实用工具
登录
注册
其它
【原创】kotlin使用Spring框架,@Component内部分方法不生效
作者: whooyun
发表于:
2025-01-09 18:56
Spring 默认使用的 JDK 动态代理只能代理接口,而不能直接代理没有实现接口的类中的非公开放方法,
那么 Spring 将无法正确地为这个方法创建代理,导致该方法调用时不经过 AOP 增强逻辑,如未注入的依赖检查等。
但是,如果你将方法声明为 open,那么 Spring 可以选择使用 CGLIB 来创建代理,CGLIB 是一种可以在运行时动态生成子类的库,它能够代理非 final 的方法。因此,一旦
你
把方法改为 open,Spring 就可以使用 CGLIB 创建一个子类去进行代理