java連線Mongodb實現增刪改查
阿新 • • 發佈:2020-03-09
本文例項為大家分享了java連線Mongodb實現增刪改查的具體程式碼,供大家參考,具體內容如下
1.建立maven專案
<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.4.1</version> </dependency>
2.編寫程式碼
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); // 獲取所有的資料庫 List<String> databaseNames = mongodbClint.getDatabaseNames(); for (String databaseName : databaseNames) { System.out.println("資料庫名稱 "+databaseName); } // 連線指定的資料庫 DB db = mongodbClint.getDB("text"); //獲取當前資料庫下的所有集合名稱 Set<String> collectionNames = db.getCollectionNames(); for (String dbname : collectionNames) { System.out.println("集合名稱 "+dbname); } // 連線指定的集合 DBCollection collection = db.getCollection("stus"); // 資料集合資訊 DBCursor dbObjects = collection.find(); while (dbObjects.hasNext()){ //讀取資料 DBObject next = dbObjects.next(); // json 格式轉換 Stus parse = JSON.parseObject(next.toString(),Stus.class); // 資料輸出 System.out.println(parse); } } }
2.新增資料
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); // 連線資料庫 MongoDatabase database = mongodbClint.getDatabase("text"); // 獲取物件 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","南陽"); 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); // 連線資料庫 MongoDatabase database = location.getDatabase("text"); //獲取集合封賬物件 MongoCollection<Document> collection = database.getCollection("stus"); // 刪除的條件 BasicDBObject dbObject = new BasicDBObject("name","諸葛亮"); // 刪除符合條件的第一個 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(); // 連線資料庫 MongoDatabase database = mongoClient.getDatabase("text"); // 得到集合封裝隊象 MongoCollection<Document> stuo = database.getCollection("stus"); // 查詢條件 BasicDBObject upFind = new BasicDBObject("name","wangwu"); // 修改的值 BasicDBObject upNew = new BasicDBObject("$set",new BasicDBObject("address","高老莊")); // 修改符合條件的第一個值 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(); // 連線資料庫 MongoDatabase database = mongoClient.getDatabase("text"); // 得到集合封裝隊象 MongoCollection<Document> stus = database.getCollection("stus"); // 查詢條件 BasicDBObject find = new BasicDBObject("name","wangwu"); // 得到查詢結果 FindIterable<Document> results = stus.find(find); // 集合遍歷 for (Document result : results) { // 格式轉換 String s = JSON.toJSONString(result); // 查詢結果輸出 System.out.println(JSON.parseObject(s,Stus.class)); } } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。