我需要绑定(bind)一个类作为两个接口(interface)的实现。它应该绑定(bind)在一个单例范围内。我做了什么:bind(FirstSettings.class).to(DefaultSettings.class).in(Singleton.class);bind(SecondSettings.class).to(DefaultSettings.class).in(Singleton.class);但是,很明显,这会导致创建两个不同的实例,因为它们绑定(bind)到不同的键。我的问题是我该怎么做? 最佳答案 Guice的w
我需要绑定(bind)一个类作为两个接口(interface)的实现。它应该绑定(bind)在一个单例范围内。我做了什么:bind(FirstSettings.class).to(DefaultSettings.class).in(Singleton.class);bind(SecondSettings.class).to(DefaultSettings.class).in(Singleton.class);但是,很明显,这会导致创建两个不同的实例,因为它们绑定(bind)到不同的键。我的问题是我该怎么做? 最佳答案 Guice的w
我正在尝试使用GoogleGuice2.0注入(inject)东西,我有以下结构:FooActionimplementsActionBarActionimplementsAction然后我有一个带有以下构造函数的ActionLibrary:ActionLibrary(ListtheActions)当我从Guice请求ActionLibrary的实例时,我希望Guice识别两个已注册的Action类(FooAction、BarAction)并将它们传递给构造函数。这里的动机是当我添加第三个ActionBazAction时,就像在Module中注册它一样简单,它会自动添加到构造函数中的列表
我正在尝试使用GoogleGuice2.0注入(inject)东西,我有以下结构:FooActionimplementsActionBarActionimplementsAction然后我有一个带有以下构造函数的ActionLibrary:ActionLibrary(ListtheActions)当我从Guice请求ActionLibrary的实例时,我希望Guice识别两个已注册的Action类(FooAction、BarAction)并将它们传递给构造函数。这里的动机是当我添加第三个ActionBazAction时,就像在Module中注册它一样简单,它会自动添加到构造函数中的列表
假设我想在我的项目中添加guice-assistedinject作为依赖项。它将guice工件指定为依赖项本身。如何告诉它使用no_aop版本的guice?我知道我可以做到以下几点,但是我可以在不排除guice模块的情况下一步完成吗?dependencies{compile(group:'com.google.inject.extensions',name:'guice-assistedinject',version:'3.0'){excludemodule:'guice'}compilegroup:'com.google.inject',name:'guice',version:'3
假设我想在我的项目中添加guice-assistedinject作为依赖项。它将guice工件指定为依赖项本身。如何告诉它使用no_aop版本的guice?我知道我可以做到以下几点,但是我可以在不排除guice模块的情况下一步完成吗?dependencies{compile(group:'com.google.inject.extensions',name:'guice-assistedinject',version:'3.0'){excludemodule:'guice'}compilegroup:'com.google.inject',name:'guice',version:'3
我不确定这个问题是否有值(value),但是否有任何特定于GoogleGuice的最佳实践和反模式??请将任何通用DI模式指向thisquestion. 最佳答案 我一直觉得构造函数注入(inject)到final字段是一种最佳实践。它通过明确类的正式依赖关系来最小化可变状态并让类更容易理解。publicclassMyClass{privatefinalMyDependencydependency;@InjectpublicMyClass(MyDependencydependency){this.dependency=depende
我不确定这个问题是否有值(value),但是否有任何特定于GoogleGuice的最佳实践和反模式??请将任何通用DI模式指向thisquestion. 最佳答案 我一直觉得构造函数注入(inject)到final字段是一种最佳实践。它通过明确类的正式依赖关系来最小化可变状态并让类更容易理解。publicclassMyClass{privatefinalMyDependencydependency;@InjectpublicMyClass(MyDependencydependency){this.dependency=depende
我已经阅读了有关GoogleGuice的信息,并且了解其他依赖注入(inject)方法的一般问题,但是我还没有看到有人在“实践”中使用Guice的例子,它的值(value)变得清晰。我想知道是否有人知道任何此类示例? 最佳答案 使用GoogleGuice简化单元测试只是高级别的优势。有些人甚至可能不会在他们的项目中使用单元测试。人们一直在使用Spring/DependencyInjection,而不仅仅是用于单元测试。使用GoogleGuice的低级优势在于应用程序的内聚性,项目中的类之间可以松散耦合。我可以为另一个类提供一个类,而
我已经阅读了有关GoogleGuice的信息,并且了解其他依赖注入(inject)方法的一般问题,但是我还没有看到有人在“实践”中使用Guice的例子,它的值(value)变得清晰。我想知道是否有人知道任何此类示例? 最佳答案 使用GoogleGuice简化单元测试只是高级别的优势。有些人甚至可能不会在他们的项目中使用单元测试。人们一直在使用Spring/DependencyInjection,而不仅仅是用于单元测试。使用GoogleGuice的低级优势在于应用程序的内聚性,项目中的类之间可以松散耦合。我可以为另一个类提供一个类,而