您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)使用java怎么連接Mongodb并實(shí)現(xiàn)增刪改查操作,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
1.創(chuàng)建maven項(xiàng)目
<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.4.1</version> </dependency>
2.編寫(xiě)代碼
1.查詢所有
package com.czxy.mongodb; import com.alibaba.fastjson.JSON; import com.mongodb.*; import java.util.List; import java.util.Set; public class Find { public static void main(String[] args) { //客戶端鏈接 MongoClient mongodbClint = new MongoClient("localhost", 27017); // 獲取所有的數(shù)據(jù)庫(kù) List<String> databaseNames = mongodbClint.getDatabaseNames(); for (String databaseName : databaseNames) { System.out.println("數(shù)據(jù)庫(kù)名稱 "+databaseName); } // 連接指定的數(shù)據(jù)庫(kù) DB db = mongodbClint.getDB("text"); //獲取當(dāng)前數(shù)據(jù)庫(kù)下的所有集合名稱 Set<String> collectionNames = db.getCollectionNames(); for (String dbname : collectionNames) { System.out.println("集合名稱 "+dbname); } // 連接指定的集合 DBCollection collection = db.getCollection("stus"); // 數(shù)據(jù)集合信息 DBCursor dbObjects = collection.find(); while (dbObjects.hasNext()){ //讀取數(shù)據(jù) DBObject next = dbObjects.next(); // json 格式轉(zhuǎn)換 Stus parse = JSON.parseObject(next.toString(), Stus.class); // 數(shù)據(jù)輸出 System.out.println(parse); } } }
2.添加數(shù)據(jù)
package com.czxy.mongodb; import com.mongodb.MongoClient; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.Document; import java.util.HashMap; import java.util.Map; public class Insert { public static void main(String[] args) { // 獲取連接 MongoClient mongodbClint = new MongoClient("localhost", 27017); // 連接數(shù)據(jù)庫(kù) MongoDatabase database = mongodbClint.getDatabase("text"); // 獲取對(duì)象 MongoCollection<Document> stus = database.getCollection("stus"); Map<String, Object> map=new HashMap(); map.put("name", "諸葛亮"); map.put("sex", "男"); map.put("age", 35.0); map.put("address", "南陽(yáng)"); Document document = new Document(map); System.out.println(document); stus.insertOne(document); } }
3.刪除
package com.czxy.mongodb; import com.mongodb.BasicDBObject; import com.mongodb.MongoClient; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.Document; /** * 刪除 */ public class Delete { public static void main(String[] args) { //獲取連接 MongoClient location = new MongoClient("localhost", 27017); // 連接數(shù)據(jù)庫(kù) MongoDatabase database = location.getDatabase("text"); //獲取集合封賬對(duì)象 MongoCollection<Document> collection = database.getCollection("stus"); // 刪除的條件 BasicDBObject dbObject = new BasicDBObject("name", "諸葛亮"); // 刪除符合條件的第一個(gè) collection.deleteOne(dbObject); // 刪除符合條件的所有 // collection.deleteMany(new BasicDBObject("name","lisi")); } }
4.修改
package com.czxy.mongodb; import com.mongodb.BasicDBObject; import com.mongodb.MongoClient; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.Document; import java.awt.*; public class Update { public static void main(String[] args) { // 獲取連接 MongoClient mongoClient = new MongoClient(); // 連接數(shù)據(jù)庫(kù) MongoDatabase database = mongoClient.getDatabase("text"); // 得到集合封裝隊(duì)象 MongoCollection<Document> stuo = database.getCollection("stus"); // 查詢條件 BasicDBObject upFind = new BasicDBObject("name", "wangwu"); // 修改的值 BasicDBObject upNew = new BasicDBObject("$set", new BasicDBObject("address", "高老莊")); // 修改符合條件的第一個(gè)值 stuo.updateOne(upFind, upNew); //修改符合條件的全部 // stuo.updateMany(upFind, upNew); } }
5.條件查詢
package com.czxy.mongodb; import com.alibaba.fastjson.JSON; import com.mongodb.BasicDBObject; import com.mongodb.MongoClient; import com.mongodb.client.FindIterable; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.Document; public class FindEq { public static void main(String[] args) { // 獲取連接 MongoClient mongoClient = new MongoClient(); // 連接數(shù)據(jù)庫(kù) MongoDatabase database = mongoClient.getDatabase("text"); // 得到集合封裝隊(duì)象 MongoCollection<Document> stus = database.getCollection("stus"); // 查詢條件 BasicDBObject find = new BasicDBObject("name", "wangwu"); // 得到查詢結(jié)果 FindIterable<Document> results = stus.find(find); // 集合遍歷 for (Document result : results) { // 格式轉(zhuǎn)換 String s = JSON.toJSONString(result); // 查詢結(jié)果輸出 System.out.println(JSON.parseObject(s,Stus.class)); } } }
看完上述內(nèi)容,你們對(duì)使用java怎么連接Mongodb并實(shí)現(xiàn)增刪改查操作有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。