Springboot CGLIB 代理对象问题

这里只写我遇到的问题

1、属性访问修饰符问题

java 复制代码
 @Autowired
 protected Service service;

因为对象为protected,然后注入失败,service为null,所以会调用报错,应改为private。

无论是构造器注入,还是set方法注入 一样也适用。

2、方法访问修饰符问题

java 复制代码
 @GetMapping("method")
 private Response method() {}

因为方法为private 导致代理对象无法成功转发到目标对象,应改为public。

上面两种情况都会让service为null 一个是因为目标对象service为null,一个是调用到代理对象上的service,这个service本身就是null。

结论:总结来说,接口调用之所以能成功,是因为 方法调用 触动了代理的拦截器,从而将执行权转移到了持有真实数据的 目标对象 上。而字段访问失败,正是因为这个操作绕过了整个拦截和转发机制。

相关推荐
WeiXin_DZbishe11 小时前
基于springboot宠物领养系统-计算机毕设 附源码【课程设计】94217
vue.js·spring boot·python·django·php·课程设计
vx_bisheyuange12 小时前
基于SpringBoot的体育商品推荐系统
spring boot·毕业设计
别动我齐刘海12 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
Wx-bishekaifayuan12 小时前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游
Wx-bishekaifayuan13 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
code2cat13 小时前
Java进阶篇之AtomicLongFieldUpdater:把累计额度留在对象字段中
java·cas·并发编程
WeiXin_DZbishe13 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
泡茶喝茶写代码13 小时前
A股量化数据工程:从 REST 接口到策略信号(第 18 篇):放量缩量异动扫描
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
WeiXin_DZbishe14 小时前
基于Springboot+AI的kuall音乐广场的设计与实现-计算机毕设 附源码【课程设计】12715
vue.js·人工智能·spring boot·后端·python·php·课程设计