java - 如何解决 Spring 中的循环依赖

标签 java spring

我如何解决spring中的循环依赖。当我们有一个类A依赖于类B而类B依赖于C时,那么如何使用spring在java(基于注释)中解决这些问题

最佳答案

尝试使用@Lazy在构造函数中添加注释,如下所示:

@Component
public class C {
    private final A a;

    @Autowired
    public C(@Lazy final A a) {
        this.a = a;
    }
}

这使得您的 A bean 仅在实际需要时才进行初始化,而不是在应用程序尚未准备好时启动。

关于java - 如何解决 Spring 中的循环依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34804237/

相关文章:

java - 带预身份验证的 Spring Security 自定义异常处理程序

spring boot 动态更改数据库

java - Spring boot + Envers ClassNotFoundException

java - application.xml 中必需的尾部斜杠

java - 调用@Async 方法时,Spring MVC Controller 不会立即返回

java - 通过 Spring xml 数据源配置 postgresql 驱动程序

java - 使用jdbc模板批量更新插入或更新记录后如何获取自动生成的主键?

java - 在java中的jfreechart上添加按钮

java - 从 kafka 流和 Avro 反序列化同一类时出现 ClassCastException

java - pmd:UseConcurrentHashMap 不工作?