有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JavaGuice是否对特定实例使用注入?

我不明白如何在特定实例的Guice中使用注入。我试过这个:

@Inject(optional=true)
    public void setCarpenter(@Named("setCarpenter") Carpenter carpenter){
        System.out.println("Assigned carpenter for Table");
        this.carpenter = carpenter;
    }


bind(Table.class).annotatedWith(Names.named("table1")).toInstance(new Table(4, new Metal()));
bind(Table.class).annotatedWith(Names.named("table2")).toInstance(table);
bind(Carpenter.class).annotatedWith(Names.named("setCarpenter")).toInstance(new Carpenter());

并且它对两个表实例都使用setCarpenter。如何指定设置为特定实例


共 (1) 个答案

  1. # 1 楼答案

    我想你可能正在寻找“机器人腿”问题的解决方案

    有关详细信息,请参见wiki here