9

如何在球衣中使用 HK2 将常量注入某个类?有了Guice,我可以上一些课,比如

public class DependsOnFoo {

    @Inject
    public DependsOnFoo(@Named("FOO") String foo) {
        ...
    }
    ...
}

我会用类似的东西在注射器中配置它

bind(String.class).named("FOO").toInstance(new String("foo"))

HK2中的等价物(如果有的话)是多少?

4

1 回答 1

21

我正在学习来自 Guice 的 hk2。老实说,在 hk2 的复杂性与 guice 的简单性之间,我仍然有点迷茫。我确实发现这个解决方案对我有用,它与 Guice builder 非常相似。这似乎比必须使用ServiceLocatorUtilities类更直接一些。

public class IOCMockRestModule extends AbstractBinder
    bind(20000).to(Integer.class).named("MAX_REQUEST_TIMEOUT");
}

并使用注入的值:

@Inject
protected CustomerResource(ICustomerProvider customerProvider, @Named("MAX_REQUEST_TIMEOUT") int maxTimeoutMillis) {
于 2015-01-29T19:04:42.573 回答