準備工作:要想用java實現對MongoDB的增刪改查,首先需要下載mongo的java驅動,mongo-java-driver-3.2.2,
下載地址:https://oss.sonatype.org/content/repositories/releases/org/mongodb/mongodb-driver/3.2.2/
導入jar包之後,就可以對MongoDB進行相應的操作了。
在進行基本操作之前,別忘了連接數據庫哦
//連接mongo
MongoClient mc=new MongoClient("localhost",27017);
//連接指定數據庫
DB db=new DB(mc,dbName);
//連接指定文檔(mongo中叫文檔,也就相當於Oracl中的表)
DBCollection collection=db.getCollection(tableName);
接下里我們進行增刪改查的操作
首先,我們向A數據庫中的area表中增加一條數據
//用來存儲要添加的數據
DBObject content=new BasicDBObject();
content.put("name","北京");
content.put("type","首都");
collection.insert(content);
content可以看成是在組json,組成的格式是{"name":"北京","type":"首都"},自己可以打印輸出看一下,這是爲了實現mongo數據庫的語法
mongo原語法: db.getCollection('area').insert({"name":"北京","type":"首都"});
這是我們就成功的向area表中添加了一條數據
接下來我們將這條數據查詢出來
DBObject condition=new BasicDBObject();
content.put("name","北京");
//將area表中所有包含name爲北京的全部查詢出來
DBCursor cursor=collection.find(condition);
//將cursor中的元素全部輸出
while(cursor.hasNext()){
System.out.print(cursor.next());
}
mongo原語法:
db.getCollection('area').find({"name":"北京"});
{ "_id" : { "$oid" : "573ec80c38134d356cf1e54d"} , "name" : "北京" , "type" : "首都"}
這裏的_id是mongo自動生成的,是唯一的
接下里我們將北京改爲上海
這裏我們需要用兩個條件來進行操作,第一個用於定位要修改的數據,第二個用來修改數據
//用來定位要修改的數據
DBObject oldData=new BasicDBObject();
content.put("name","北京");
//新的數據
DBObject newData=new BasicDBObject();
content.put("name","上海");
//將新的數據加以操作符$set,
DBObject condition=new BasicDBObject();
content.put("$set",newData);
//進行數據更新
collection.update(oldData,condition);
mongo原語法:
db.getCollection('area').update({"name":"北京"},{$set:{"type":"首都"}});
我們執行一下,然後再查詢出來可以得到這樣的結果
{ "_id" : { "$oid" : "573ec80c38134d356cf1e54d"} , "name" : "上海" , "type" : "首都"}接下來刪除這條數據
//刪除條件
DBObject condition=new BasicDBObject();
content.put("name","上海");
//將刪除area表中所有的包含name爲上海的數據
collection.remove(condition);
mongo原語法:db.getCollection('area').remove({“name”:”上海“})
這是我們將查不到這條數據。說明刪除成功
用驅動中的方法和mongo原語法對比,更容易理解驅動中的各個方法和變量的作用。