Guice和一般的应用程序配置的问题?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (52)

对于用Java编写的监控软件,我考虑使用Google Guice作为DI提供者。该项目需要从外部资源(文件或数据库)加载其配置。该应用程序被设计为以独立模式或在一个servlet容器中运行。

目前,配置不包含用于依赖项注入的绑定或参数,只有一些全局应用程序设置(JDBC连接定义和关联的数据库管理/监视对象)。

我看到两个选项:

要么

  • 为Guice使用基于文件的插件,例如guice-xml-config来存储应用程序选项(如果需要,这将允许稍后配置DI部分)。

你会推荐使用Guice来完成这两项任务,还是将一般的应用程序配置与依赖注入区分开来?你认为哪些优点和缺点是最重要的?

提问于
用户回答回答于

可以这样

public class MyModule extends AbstractModule {

  @Override
  protected void configure() {
    try {
        Properties properties = new Properties();
        properties.load(new FileReader("my.properties"));
        Names.bindProperties(binder(), properties);
    } catch (IOException ex) {
        //...
    }
  }
} 
用户回答回答于

检查管理器库:

https://github.com/Netflix/governator/wiki/Configuration-Mapping

将获得一个@Configuration注释和几个配置提供程序。在代码中,有助于了解您所使用的配置参数在哪里:

@Configuration("configs.qty.things")
private int   numberOfThings = 10;

扫码关注云+社区

领取腾讯云代金券