基本上我想将属性文件加载到单例中,然后使用Guice将这些属性动态注入任何需要它们的类或方法。
我的模块看起来像这样:
exports.index = function (req, res) {
res.render('myapp', {});
};
然后在我的程序中,我想声明如下方法:
public class ConfigurationModule extends AbstractModule {
@Override
protected void configure() {
try{
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
Properties properties = new Properties();
properties.load(classLoader.getResourceAsStream("fileName.properties"));
Names.bindProperties(binder(), properties);
} catch(Exception e){
e.printStackTrace();
}
}
}
public class TestClass {
@Inject
public void testMethod(@FooServerAddress String fooServerAddress){
//Do things
}
}
中的FooServerAddress = "blah"
。
现在我知道我可以通过像这样使用Guice实例化TestClass来实现这一点:
fileName.properties
但这对我不起作用,因为我想使用单身人士。同样这样做意味着每当我实例化一个我不能做的类时我必须使用Guice注入器,因为可以从我的范围之外调用某些方法。
那么有什么方法可以使用Guice自动将属性文件中的属性加载到方法中?