用Guice实现参数化工厂
|
我有一个我想使用Guice重新实现的工厂:
enum MyObjects { OBJECT1, OBJECT2, ... }
class Object1 implements SomeInterface { ... }
class Object2 implements SomeInterface { ... }
...
class Factory {
public static SomeInterface createObject(MyObjects obj) {
switch (obj) {
case OBJECT1: return new Object1();
case OBJECT2: return new Object2();
...
}
}
有没有简单的方法来实现它?
诸如Provider.get(parameter)之类的东西,并使用绑定来定义每种情况下应使用哪个对象?
没有找到相关结果
已邀请:
2 个回复
室邢
在您的
中:
然后在要注入的类中:
在这里,您必须定义实现
的
类(是的,可以扩展注释!)有关更多详细信息,请看一下如何在Guice中实现
。 2.您还可以按以下方式使用Guice MapBinder(我发现它更易于实现) 在您的模块中:
然后在注入方法中:
席酱
然后在您的模块中
然后您可以在需要的地方使用工厂