gpt4 book ai didi

java - Spring @DependsOn 继承行为

转载 作者:行者123 更新时间:2023-12-02 02:35:31 25 4
gpt4 key购买 nike

我有一个抽象类A和一堆子类,它们是使用@Service注释定义的Spring bean(A本身不是已注释)。我还有一些单独的 B 类型的 bean。

我需要实现的是让所有这些A-bean bean B之后初始化。

现在我已经将 @DependsOn('b') 与所有这些 bean 一起使用 - 并且它有效。但我不想为将来可能创建的所有其他 A-bean 复制粘贴此注释。因此,我尝试仅将 @DependsOn('b') 放入抽象 A 类,但它不起作用:可能此注释不是继承的。

那么除了将此注释添加到每个子类之外,还有其他优雅的方式来实现此行为吗?

最佳答案

如果解决您的用例,请使用@Lazy而不是@DependsOn('b')

@Lazy 仅当在代码中的某个位置访问该 bean 时才会由容器初始化

@Bean
@Lazy(value = true)
public A a(){
return new A();
}

关于java - Spring @DependsOn 继承行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46421346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com