Java操作MongoDB的基礎語法
阿新 • • 發佈:2018-12-24
1.查詢一條文件
//查詢uid為14743423415102的文件
BasicDBObject bson = new BasicDBObject("uid", 14743423415102);
FindIterable<Document> documents = collection.find(bson);
Document document = new Document();
for(Document doc : documents){
document = doc;
break;
}
2.更新一條文件中的欄位
存在弊端,若欄位型別不一致,會丟擲異常
推薦用下面一條$set方法進行更新
//更新uid為14743423415102文件中的name欄位值
BasicDBObject bson = new BasicDBObject("uid", 14743423415102);
BasicDBObject bson1 = new BasicDBObject("name", "jack");
UpdateResult result = collection.updateOne(bson, bson1);
3.在一條文件中插入(更新)欄位
$set:用來指定一個鍵並更新鍵值,若鍵不存在並建立。
有效的防止了欄位型別不一致導致的更新值失敗問題
//在uid為14743423415102文件中插入欄位名為name、欄位值為jack的欄位
BasicDBObject bson = new BasicDBObject("uid", 14743423415102);
BasicDBObject bson1 = new BasicDBObject("name", "jack");
UpdateResult result = collection.updateOne(bson, new BasicDBObject("$set", bson1));
4.刪除一條文件中的欄位
$unset:主要是用來刪除鍵
//刪除uid為14743423415102文件的name欄位
BasicDBObject bson = new BasicDBObject("uid" , 14743423415102);
BasicDBObject bson1 = new BasicDBObject("name", "jack");
UpdateResult result = collection.updateOne(bson, new BasicDBObject("$unset", bson1););
5.在陣列中插入文件
$push:陣列修改器
//找出country為China的文件中,並向該文件中的record欄位下的2017-08-29陣列中插入文件
BasicDBObject bson = new BasicDBObject("country", "China");
String dateStr = '2017-08-29';
BasicDBObject bson1 = new BasicDBObject("$push", new BasicDBObject("record."+dateStr, document));
collection.updateOne(bson, bson1);