gpt4 book ai didi

java - Guice 将抽象基类绑定(bind)到具体类

转载 作者:行者123 更新时间:2023-11-29 07:46:13 25 4
gpt4 key购买 nike

我有一个具有以下绑定(bind)的模块

bind(BaseAbstract.class).to(Concrete.class).in(Scopes.SINGLETON);
bind(Concrete.class).toProvider(.....);

当我要求 Guice 提供两个类时,一个需要 base,一个需要 Concrete,创建了两个单独的 Concrete 对象。

injector.getInstance(INeedABaseAbstract.class);
injector.getInstance(INeedAConcrete.class);

我只想要一个单一的 Concrete 实例,Guice 将它提供给需要 BaseAbstract 或 Concrete 的类。

最佳答案

您将 BaseAbstract 绑定(bind)为 Singleton 而不是 Concrete。试试这个:

bind(BaseAbstract.class).to(Concrete.class);
bind(Concrete.class).toProvider(ConcreteProvider.class).in(Scopes.SINGLETON);

关于java - Guice 将抽象基类绑定(bind)到具体类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25492831/

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