如何使用Guice的注射器?

时间:2013-02-12 19:09:51

标签: java guice guice-3

我正在学习Guice,我不清楚如何使用Injector实例。最好在应用程序引导程序上创建一次Injector实例,并使其成为公共单例?

我们总是必须使用Injector#getInstance(SomeClass.class)来获取我们推出Guice的@Inject注释的类吗?

1 个答案:

答案 0 :(得分:7)

您不应将注射器作为全局单例传递。你看过:https://github.com/google/guice/wiki/GettingStarted了吗?请注意,RealBillingService不会使用注入器来获取CreditCardProcessorTransactionLog的实例。相反,Guice在创建实例时会为您处理所有这些。

如果您需要Guice创建许多相同类型的对象,请考虑使用Provider并注入该提供程序。