【发布时间】:2010-05-22 07:21:29
【问题描述】:
Guice Singletons 对我来说很奇怪
一开始我是这么想的
IService ser = Guice.createInjector().getInstance(IService.class);
System.out.println("ser=" + ser);
ser = Guice.createInjector().getInstance(IService.class);
System.out.println("ser=" + ser);
将作为单例工作,但它会返回
ser=Service2@1975b59
ser=Service2@1f934ad
没关系,没那么简单。
Injector injector = Guice.createInjector();
IService ser = injector.getInstance(IService.class);
System.out.println("ser=" + ser);
ser = injector.getInstance(IService.class);
System.out.println("ser=" + ser);
作为单身人士工作
ser=Service2@1975b59
ser=Service2@1975b59
所以我需要有一个带有 Injector 的静态字段(Singleton for Singletons)
如何将模块传递给它进行测试?
【问题讨论】:
-
我不同意你问题的前提!您是否阅读过 Guice 用户指南?
标签: java unit-testing singleton module guice