场景:
A类有init,A类的init动作涉及注入B类,B类也依赖注入C类(有成员变量C),在A的初始化动作中,底层涉及使用C类的方法
@PostConstruct private void init() { aClient = ABuilder.newBuilder().b(new B()).build;}
public class B { @Resource public C c;}
使用.b(new B())则会报错空指针,因为此时C为null,调用c的方法时直接报错
解决办法:
在A类中注入B类,build方法中使用依赖注入的b,b的注入会使得b中的c也被注入
@Resource
public B b;
@PostConstruct
private void init() { aClient = ABuilder.newBuilder().b(b).build;}