問題があります
java と mongoDB アプリをホストするために jelastic を使用しています。そして、私のアプリと Jelasctic が提供する mongoDB との間の接続に問題があります。
構成ファイルは次のようになります。
public class MongoManager {
static String host, dbname, user, password;
public void addData(int repeats) {
try {
DBCollection dbc = null;
Properties prop = new Properties();
prop.load(new FileInputStream(System.getProperty("user.home") + "/mydb.cfg"));
host = prop.getProperty("host").toString();
dbname = prop.getProperty("dbname").toString();
user = prop.getProperty("user").toString();
password = prop.getProperty("password").toString();
System.out.println("host: " + host + "\ndbname: " + dbname + "\nuser: " + user + "\npassword: " + password);
Mongo m = new Mongo(host, 27017);
DB db = m.getDB(dbname);
if (db.authenticate(user, password.toCharArray())) {
System.out.println("Connected!");
} else {
System.out.println("Connection failed");
}
try {
db.getCollection("mycollection");
} catch (Exception e) {
db.createCollection("mycollection", null);
} finally {
System.out.println("Repeats: " + repeats);
for (int i = 1; i <= repeats; i++) {
BasicDBObject data = new BasicDBObject("data", new Date());
db.getCollection("mycollection").save(data);
System.out.println("INFO: row added " + data);
}
}
} catch (IOException ex) {
}
}
私の物と
public class MongodbUtil {
private static Mongo mongo = null;
private static Morphia morphia = null;
private static Datastore ds = null;
private MongodbUtil() {};
public static synchronized DB getDB(String str) throws Exception {
if(mongo == null) {
mongo = new Mongo();
}
return mongo.getDB(str);
}
public static synchronized Mongo getMongo() throws Exception {
if(mongo == null) {
mongo = new Mongo("localhost", 27017);
}
return mongo;
}
public static synchronized Morphia getMorphia() throws Exception {
if(morphia == null) {
mongo = getMongo();
morphia = new Morphia();
morphia.mapPackage("com.sogeti.simulator.entity");
}
return morphia;
}
public static synchronized Datastore getDataStore(){
if(ds == null){
try {
morphia = getMorphia();
ds = morphia.createDatastore(mongo, "Simulator");
} catch (Exception e) {
e.printStackTrace();
}
}
return ds;
}
同じファイルですか?host のような構成ファイルのプロパティを設定するにはどうすればよいですか? パスワード?その他 ?!
私のMongoDB.cfg.xmlはこのように見えますが、私はSPRINGまたはMAVENを使用していないため、これは悪いと思います.Webに単純なMongoDB.cfg.xmlの例はありません.
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd;">
<dependency>
<groupId>com.morphia.Morphia</groupId>
<artifactId>morphia</artifactId>
<version>0.99</version>
</dependency>
<dependency>
<groupId>com.mongodb.Mongo</groupId>
<artifactId>mongo</artifactId>
<version>2.10.1</version>
</dependency>