老师,我在编写自研框架时,使用JDK动态代理生成代理类完成逻辑织入后,下一步进行IOC时会报错。
java.lang.IllegalArgumentException: Can not set com.zjc.shop.service.RegisterService field com.zjc.shop.controller.UserController.registerService to com.sun.proxy.$Proxy16
我debug了一下发现是因为在aspect的织入逻辑中把容器里面被代理的bean替换成了代理类的bean,但是key还是被代理类class的,因此在进行IOC时会获取到被代理类的Filed字段进行依赖注入,但是代理类的bean好像没有了成员变量,所以报错。想请教一下老师,Spring框架中是如何解决这个问题的?