Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在学习 Guice,但我不清楚如何使用Injector实例。最好Injector在应用程序引导程序上创建一次实例,并将其设为公共单例?
Injector
我们是否总是必须使用Injector#getInstance(SomeClass.class)来获取放置 Guice@Inject注释的类?
Injector#getInstance(SomeClass.class)
@Inject
您不应该将注入器作为全局单例传递。你看过:https ://github.com/google/guice/wiki/GettingStarted ?请注意,RealBillingService不使用注入器来获取CreditCardProcessor和的实例TransactionLog。相反,Guice 在创建实例时会为您处理所有这些。
RealBillingService
CreditCardProcessor
TransactionLog
如果您需要 Guice 创建许多相同类型的对象,请考虑使用提供程序并注入该提供程序。