Mongodb for Java(ADT),如何创建连接?
这是我试图出错的代码,并给了我一个错误Mongodb for Java(ADT),如何创建连接?,java,android,mongodb,mongodb-java,Java,Android,Mongodb,Mongodb Java,这是我试图出错的代码,并给了我一个错误 try { MongoClient mongoClient = new MongoClient("localhost", 27017); DB db = mongoClient.getDB("mydatabase"); DBCollection table = db.getCollection("users"); BasicDBObject document = new BasicDBObj
try {
MongoClient mongoClient = new MongoClient("localhost", 27017);
DB db = mongoClient.getDB("mydatabase");
DBCollection table = db.getCollection("users");
BasicDBObject document = new BasicDBObject();
document.put("user_id", "5");
document.put("user_name", "David");
table.insert(document);
} catch (MongoException e) {
Log.w("PPERROR", e.getClass().getName() + ": " + e.getMessage());
} catch (UnknownHostException e) {
Log.w("PPERROR", e.getClass().getName() + ": " + e.getMessage());
}
我真的不确定数据库连接是否真的建立了。
mongo.exe位于C:\mongodb\bin中
我使用dbpath C:\test\testdata执行了mongod.exe
这让我在27017端口等待连接
最后,整个项目位于C:\users\david\workspace\projectName中
当我运行代码时,我得到一个错误
com.mongodb.MongoTimeoutException: Timed out while waiting for a server that matches AnyServerSelector{} after 4936 ms
在这行代码之后
DBCollection table = db.getCollection("users");
我怀疑mongoClient无法获取名为mydatabase.com的数据库,或者甚至没有连接到localhost
当我创建mongoClient时,是否可以指定dbPath
如果我的解释不清楚,请告诉我
事先非常感谢
编辑
如果我是正确的,这将显示数据库连接
你能通过mongo shell连接到数据库吗?看看这个:@helmy我添加了一个屏幕截图,显示我通过cmd连接数据库。@user3266530根据你链接的帖子,我必须更改配置,对吗?打开另一个命令提示符窗口,运行mongo shell mongo.exe,查看它是否可以连接到您的mongod。
DBCollection table = db.getCollection("users");