当前位置: 首页 > 知识库问答 >
问题:

GoogleGuice:将同一类的所有实例绑定到某个实例

慎懿轩
2023-03-14

我没有问题绑定单例实例到其他一些实例使用@注入。但是,当涉及到绑定一个类的更多实例到其他一些实例(这是单例),它拒绝以某种方式绑定它,我得到了空引用。

我的代码示例是:

public class WebSocketManagerImpl implements WebSocketManager {
@Inject
private FactoryWebSocket factoryImpl;
}

当我创建几个WebSocketManagerImpl实例时,每个factoryImpl字段都是空指针。我做错什么了吗?

共有1个答案

金霄
2023-03-14

请使用绑定注释(https://code.google.com/p/google-guice/wiki/BindingAnnotations)。通过这种方式,您可以注释同一类的多个实例,然后有选择地将它们注入。

 类似资料:
  • 问题内容: 在Java中,是否有任何可能的方法来获取某个类的所有实例? 问题答案: 实例化类(Singleton模式)时,可以使用Factory静态初始化程序,然后将工厂构造函数中的每个生成的实例添加到List中。 像这样的东西:

  • 我有一个JPA实体和一个子实体列表。在这种情况下,是一个附加了角色的用户实体。 它看起来(有点简化-省略了一些字段/方法)如下: 如果是入侵,角色实体非常简单。 当我为每个用户添加两个用户和几百个角色时,当我列出用户时,我会得到一个疯狂的行为。每个用户都会被列出几百次(相同的用户=相同的唯一id)。 有问题的代码: 然而,当我只是访问数据库并执行select语句时,它看起来很好。每个用户只存在一次

  • 问题内容: 假设您已经定义了Python数据类: 将值从一个实例复制到另一个实例的最简单方法是什么? 这是我尝试实现的示例: 作为边界条件,我不想创建新实例并将其分配给。好的,我 可以 遍历所有定义的字段,然后逐个复制值,但是我想必须有一种更简单的方法。 问题答案: 我认为遍历这些字段可能是最简单的方法。我能想到的所有其他选项都涉及创建一个新对象。

  • 问题内容: 对于Python中的类,如何定义一个函数以函数中定义的格式打印类的每个实例? 问题答案: 在这种情况下,我看到两个选择: 垃圾收集器 这样做的缺点是,当您有很多对象时,它会非常慢,但会与您无法控制的类型一起使用。 使用mixin和weakrefs 在这种情况下,所有引用都将作为弱引用存储在列表中。如果您经常创建和删除很多实例,则应在迭代后清理弱引用列表,否则会产生很多麻烦。 这种情况下

  • 我在与Hawtio相同的JVM中部署了10个Camel组件。 每一个都是唯一的,有不同的ID。 我可以通过JMX视图看到所有10个,但通过“骆驼”视图只能看到9个。

  • 问题内容: 我希望在整个应用程序生命周期中只有一个类的5个实例。我该如何实现?如果可能,请提供示例代码。 问题答案: 由于Singleton应该由枚举组成(请参见“有效Java”): 格蕾兹·加德