否则会遇到以下报错
报错信息:java.lang.IllegalStateException:Cannot find current proxy:Set 'exposeProxy' property on Advised to 'true' to make it available.
前提一
使用代理对象不能调用 private 方法,会导致 Spring IOC 注入的 Bean 为 null
应该调用 public 方法
前提二
如果类中没有使用过 AOP,没有 @Transactional 注解等,并不会自动生成该类的代理对象,此时使用 AopContext.currentProxy() 获取代理对象会有问题
本文探讨了在Spring IOC容器中,使用代理对象调用私有方法导致Bean为null的异常情况。当不涉及AOP或@Transactional注解时,Spring不会生成代理对象。遇到'Cannot find current proxy'错误时,解决方案是设置Advised的exposeProxy属性为true,以暴露代理。博客深入解析了这一问题的原因和解决策略。
1455

被折叠的 条评论
为什么被折叠?



