[英]how can insert data into mongodb from android app?
我想將我的 json 數據插入到 mongo 數據庫中,我導入了 mongo Driver v 3.2.2 並在 mlab.com 中創建了一個數據庫,集合,但我無法在數據庫中發送數據這樣的文檔。
這是我的代碼:
try {
MongoClientURI uri = new MongoClientURI("mongodb://user:pass@ds041939.mlab.com:41939/vado");
MongoClient client = new MongoClient(uri);
DB db = client.getDB(uri.getDatabase());
DBCollection collection = db.getCollection("salam");
DBObject dbObject = (DBObject) JSON.parse("{'name':'mkyong', 'age':30}");
collection.insert(dbObject);
DBCursor cursorDoc = collection.find();
while (cursorDoc.hasNext()) {
System.out.println(cursorDoc.next());
}
} catch (Exception e) {
e.printStackTrace();
}
你的代碼有點不贊成。 我調整了它(使用mongo-driver 3.2.2)並對我當地的mongo進行了測試,它運行正常:
try {
MongoClientURI uri = new MongoClientURI("mongodb://localhost:27017/test");
MongoClient client = new MongoClient(uri);
MongoDatabase db = client.getDatabase(uri.getDatabase());
MongoCollection<BasicDBObject> collection = db.getCollection("salam", BasicDBObject.class);
BasicDBObject document = new BasicDBObject();
document.put("name", "mkyong");
document.put("age", 30);
collection.insertOne(document);
MongoCursor iterator = collection.find().iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
} catch (Exception e) {
e.printStackTrace();
}
確保您通過maven
或gradle
安裝mongo驅動程序,因此您擁有所有瞬態依賴項,因為mongo驅動程序需要bson
和mongodb-driver-core
。
謝謝你,先生。 我正在使用mlab.com並獲取連接字符串... import mongo-java-driver-3.4.0-SNAPSHOT和bson 3.3.0。 在此處輸入圖像描述圖片顯示連接狀態已連接。 但不要插入數據庫編輯的代碼:
try {
MongoClientURI uri = new MongoClientURI("mongodb://va***:******@ds049446.mlab.com:49446/sensingt");
MongoClient client = new MongoClient(uri);
MongoDatabase db = client.getDatabase(uri.getDatabase());
MongoCollection<BasicDBObject> collection = db.getCollection("salam", BasicDBObject.class);
BasicDBObject document = new BasicDBObject();
document.put("name", "mkyong");
document.put("age", 30);
collection.insertOne(document);
MongoCursor iterator = collection.find().iterator();
//System.out.println("Insert successfully");
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
} catch (Exception e) {
e.printStackTrace();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.