我遇到以下问题:
我正在尝试创建bean如下:
@Bean public abc createABC() { return new ABC(--, def(),--); }
`
@Bean public DEF def() { return new DEF(--, createABC(),-- }
有任何建议可以解决这个问题,而不必考虑基于setter的注入.这是不良设计的指示吗?在我的情况下,这种依赖是必须的.请提供您的观点
它表明糟糕的设计?
绝对.如果ABC
取决于DEF
并DEF
依赖于ABC
它,则间接意味着您的代码未正确组织.这种循环依赖通常表明您不遵守单一责任原则.
ABC
有逻辑DEF
应该有,反之亦然.你应该重构这些类,要么ABC
取决于DEF
或DEF
取决于ABC
但不是两者.