java - Spring boot 应用上下文中一些bean的依赖形成了一个循环:
问题描述
我的注入周期有问题,我尝试使用注释 @Lazy 和 @Setter 但仍然无法正常工作。例如
@Service
@RequiredArgsConstructor
class A{
private final B b;
}
@Service
@RequiredArgsConstructor
class B{
private final A a;
}
我在最终变量中添加了@Lazy 注释,但它不起作用。我在最终变量中添加了@Setter 注释,但它不起作用。我不知道为什么
解决方案
我们不能为最终字段设置任何设置器,因为最终变量绑定通过引导程序发生一次。@Lazy 应该使用构造函数参数声明,例如:
class B{
B(@Lazy private final A a){
this.a = a;
}
private final A a;
}
推荐阅读
- c# - SKCanvas.DrawCircle() 正在绘制正方形
- excel - 将 Excel 的文本框添加到 Powerpoint VBA
- c# - 使用 sigcheck 工具将 streamreader 数据输出到 csv
- amazon-web-services - Google Cloud 是否为其计算实例提供公共主机名?
- php - 在 Woocommerce 上更改代码功能内的文本颜色
- arrays - 多个数组到数据框熊猫
- excel - 使用形状的位置删除行
- group-by - 按 2 个字段分组 oracle sql 内连接
- ibm-watson - 如何格式化 Watson Discovery 结果以使其看起来像 Watson Assistant 响应?
- linux-kernel - 如何从 Linux 内核模块访问内核命令行?