プロパティ ファイルを使用して Mongodb への接続をパラメータ化しようとしています。
この機能を追加しました:
public static Properties load(String filename) throws IOException, FileNotFoundException{
Properties properties = new Properties();
FileInputStream input = new FileInputStream(filename);
try{
properties.load(input);
return properties;
}
finally{
input.close();
}
}
次のコードを使用します。
String path = System.getProperty("user.dir") + "/config.properties";
Properties prop = load(path);
//System.out.println("key: "+ prop.getProperty("MONGO_HOST"));
try {
//m = new Mongo(config.MONGO_HOST, config.MONGO_PORT);
m = new Mongo(prop.getProperty("MONGO_HOST"), config.MONGO_PORT);
this.db = m.getDB("cloud_datasource");
db.authenticate(config.MONGO_USER, config.MONGO_PASS.toCharArray());
} catch (Exception e) {
System.out.println("Can't connect to MongoDB");
e.printStackTrace();
}
私のconfig.propertiesで:MONGO_HOST="192.168.10.84"
問題: このコードではエラーjava.net.UnknownHostException: "192.168.10.84"
が発生しますが、コードを使用している場合:
m = new Mongo("192.168.10.84", config.MONGO_PORT);
できます。