什么情况下aop创建的代理类注入的service会为null呢?(spring注入代理对象)

什么情况下aop创建的代理类注入的service会为null呢?昨天上班通过AOP写流程权限控制的时候遇到了一个问题,是Aop创建的代理对象这个bean怎么调都是为空的,最开始以为是我aop影响了bean的创建与

昨天,在工作中通过AOP创建进程权限控制时,遇到了一个问题,AOP创建的代理对象和bean无论我如何调整它们总是为空。起初我以为AOP影响了创建和注入。我不断地检查并停止豆子。我和同事通过一一创建日志来调试这个问题。因为晚上打算回家,所以睡不着,于是又开始查资料,发现是因为SpringBoot插入了该服务。找到博主的帖子后插入了null_springboot服务。我发现原来的word_list方法的修饰符是private的。改成公开就正常了。我敏锐地意识到自己在这里的不足,所以我想先把问题记录下来,然后再补充我的代理相关知识。

总结:

AOP 不能代理私有方法。 Spring AOP是基于代理实现的,主要有两种代理方法。

JDK动态代理:基于接口实现,只有实现该接口的类和方法才能被代理。 CGLIB代理:基于子类实现,代理类是目标类的子类,可以代理没有实现接口的类和方法,但不能代理私有方法,因为它们对子类不可见。

Spring AOP在代理过程中只能拦截public和protected方法,而不能拦截private方法。私有方法在Java中是不可见的,因此代理对象无法访问这些方法。

上述关于#aop创建的代理类注入的服务为空的情况的信息应仅参考相关内容源网络。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/93147.html

Like (0)
CSDN的头像CSDN
Previous 2024年7月5日
Next 2024年7月5日

相关推荐

  • 编程高手需要什么基础

    编程高手需要的基础主要有5个方面:1、逻辑思维能力、2、编程语言掌握、3、算法和数据结构知识、4、项目和代码管理、5、持续学习的习惯。提高编程技能的各个方面都很重要。重点关注逻辑思…

    网站运维 2024年5月12日
    0
  • 光栅化算法,光栅啥意思

    计算机图形学中的光栅化是将几何形状转换为像素表示的过程,是渲染和显示图形的关键步骤之一。光栅化将矢量图形转换为在计算机屏幕上显示的图像。本文介绍光栅化的概念以及其基本步骤,帮助读者…

    网站运维 2024年4月27日
    0
  • 今天所有网站,今日网站排行

    今日网站何以难以开启? 最近,互联网上的各大网站经常无法正常打开,给很多用户带来不便。本文解释了网站可能无法正常打开的原因,并提供了一些成功处理此问题的策略。 网站无法正常打开的原…

    2024年4月28日
    0
  • ios17.2评测

    随着苹果公司不断推出新的操作系统,iOS17.2也逐渐走入了我们的视线。作为iOS17的升级版本,它带来了许多新的功能和改进,让我们的iPhone使用体验更加顺

    2024年8月30日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注