Open doufuplus opened 5 years ago
直接lazy注入自己是不是更方便一点
@guoyang924 直接lazy注入自己是不是更方便一点
这个问题出现的原因是因为this调用绕过了被调用方法的自身代理,跟注入关系不大。最简单的方式是把方法分开类写(方式2)就好了。
@doufuplus
@guoyang924 直接lazy注入自己是不是更方便一点
这个问题出现的原因是因为this调用绕过了被调用方法的自身代理,跟注入关系不大。最简单的方式是把方法分开类写(方式2)就好了。
我的意思是: UserService currentProxy = (UserService) AopContext.currentProxy(); currentProxy.sendMsg(user); 替换成 @Autowired @Lazy private UserService userService ; 注入自己,userService 就会是个代理,看上去更简洁一点
@guoyang924
@doufuplus
@guoyang924 直接lazy注入自己是不是更方便一点
这个问题出现的原因是因为this调用绕过了被调用方法的自身代理,跟注入关系不大。最简单的方式是把方法分开类写(方式2)就好了。
我的意思是: UserService currentProxy = (UserService) AopContext.currentProxy(); currentProxy.sendMsg(user); 替换成 @Autowired @Lazy private UserService userService ; 注入自己,userService 就会是个代理,看上去更简洁一点
刚调试了下发现确实是可以的,加上注解后,bean会变成JDK动态代理对象。谢谢提醒。
https://www.doufuplus.com/blog/transactional01.html