我想问一下有什么区别
bindConstant().annotatedWith(Names.named("keepAliveInterval")).to(60);
and
bind(Integer.TYPE).annotatedWith(Names.named("keepAliveInterval")).toInstance(60);
我想用 Names.bindProperties(binder(), prop); 加载所有配置属性在我的模块中,我发现它使用后一个来绑定属性。
感谢和问候
Marek
我认为使用的理由bindConstant()
are:
- 它要求您使用带注释的绑定。你不能这样做
bindConstant().to(foo)
。由于您与之绑定的类型是基元并且String
s,无注释绑定对它们中的任何一个都不太可能有意义。
- 它需要更少的工作,因为您不必指定类型(顺便说一句,
bindConstant()
绑定一个int
to Integer.class
而不是Integer.TYPE
,不确定这是否重要)。
I think Names.bindProperties
不使用bindConstant
只是因为它是内部代码,并且在进行绑定的过程中可以跳过一两个步骤,所以多一点代码就可以了。在你自己的模块中,我只需使用bindConstant
因为它既简单又清晰。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)