如何获取内部绑定类的对象

时间:2018-11-13 06:14:21

标签: java guice inject

我有一个扩展JerseyServletModule的类。此类正在安装模块

示例类别:

public class SampleJersey extends JerseyServletModule {
  // some bind statements
  install(new FirstModule());
  install(new MyConstrutorClass(/*need MyActualClass object as parameter*/)); // here I need to pass MyActualClass object to the constructor
}

现在FirstModule安装另一个模块。

例如:

public class FirstModule extends AbstarctModule{
   // some bind operations
   install(new SecondModule());
}

现在SecondModule绑定了另一个类

例如:

public class SecondModule extends AbstractModule {
  bind(MyActualClass.class).in(Scopes.SINGLETON);
}

我有一个需要将MyActualClass对象作为参数传递给constructor

的类

例如:

public class MyConstrutorClass{

   @Inject
   MyConstrutorClass(MyActualClass actual){
      // some functionality here
   }
}

1 个答案:

答案 0 :(得分:0)

MyConstrutorClass似乎不是Guice模块。模块{em>提供东西,MyConstrutorClass似乎是您要提供的东西。

现在,您已经安装了SecondModule,它提供了MyActualClass。这意味着已经提供了对MyConstrutorClass的所有依赖关系。因此,无需执行其他操作:只需@Inject MyConstrutorClass,您就完成了。