gpt4 book ai didi

java - CDI 注入(inject)来自注入(inject)点所有者的依赖项

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

我有一个名为 Container 的类:

public class Container {

@Inject
ServiceA serviceA;

@Inject
ServiceB serviceB;

}

服务B依赖于服务A:

public class ServiceB {

@Inject
ServiceA serviceA;
}

我的应用程序内可以有多个容器。现在,是否有任何技巧可以将 ServiceA 的这个实例注入(inject)到 ServiceB 中,而 ServiceA 已注入(inject)到与 ServiceB 相同的 Container 实例中?

最佳答案

将您的类注释为 @ApplicationScoped@Singleton,这将确保您的类中只有一个 ServiceA 实例应用。该实例将在第一次注入(inject)该 bean 期间创建。

附注我更喜欢 @ApplicationScoped 正如 Weld docs 中所建议的那样。因为@Singleton没有代理对象,在序列化过程中可能会出现问题。

关于java - CDI 注入(inject)来自注入(inject)点所有者的依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20048796/

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