先引入mongo-java-dirver驅動
1 2 3 4 5 6 | <!--?mongo-java-dirver?--> <dependency> ???? <groupId>org.mongodb</groupId> ???? <artifactId>mongo-java-driver</artifactId> ???? <version> 3.4 . 2 </version> </dependency> |
代碼操作演示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | package ?com.simple.database.test; import ?java.util.ArrayList; import ?java.util.List; import ?org.bson.Document; import ?org.bson.conversions.Bson; import ?com.mongodb.MongoClient; import ?com.mongodb.client.FindIterable; import ?com.mongodb.client.MongoCollection; import ?com.mongodb.client.MongoCursor; import ?com.mongodb.client.MongoDatabase; import ?com.mongodb.client.model.Filters; /** ? *?java操作MongoDB ? *?@author?root ? */ public ?class ?HelloMongoDB?{ ???? public ?static ?void ?main(String[]?args)?{ ???????? try ?{ //????????? 1、連接到MongoDB服務 ???????????? MongoClient?mc?=? new ?MongoClient( "127.0.0.1" ,? 27017 ); //????????? 2、連接到指定數據庫 ???????????? MongoDatabase?db?=?mc.getDatabase( "demodb" ); ???????????? ?//????????? 3、創建集合 //????????? db.createCollection("simplelife"); ???????????? ?//????????? 4、獲取集合 ???????????? MongoCollection<Document>?collection?=?db.getCollection( "users" ); //????????? 5、插入文檔數據 //????????? insertCollectionData(collection); ???????????? ?//????????? 6、查詢文檔數據 ???????????? findCollectionData(collection); ???????????? ?//????????? 7、更新文檔數據 //????????? 將文檔中likes=100的文檔修改為likes=200??? ???????????? updateCollectionData(collection); ???????????? ?//????????? 8、刪除第一個文檔數據 ???????????? collection.deleteMany(Filters.eq( "likes" , 200 )); ???????????? collection.deleteOne(Filters.eq( "likes" , 100 )); ???????? }? catch ?(Exception?e)?{ ???????????? e.printStackTrace(); ???????????? System.out.println(e.getClass().getName()?+? "……" ?+?e.getMessage()); ???????? } ???? } ???? private ?static ?void ?updateCollectionData( ???????????? MongoCollection<Document>?collection)?{ ???????? Bson?filter?=?Filters.eq( "likes" ,? 100 ); ???????? Document?update?=? new ?Document( "$set" ,? new ?Document( "likes" ,? 200 )); ???????? collection.updateMany(filter,?update); ???? } ???? private ?static ?void ?findCollectionData(MongoCollection<Document>?collection)?{ ???????? FindIterable<Document>?findIterable?=?collection.find(); ???????? MongoCursor<Document>?mongoCursor?=?findIterable.iterator(); ???????? while (mongoCursor.hasNext()){ ???????????? System.out.println(mongoCursor.next()); ???????? } ???? } ???? /** ????? *?插入文檔?1、創建文檔org.bson.Document參數為key-value的格式 ????? *?2、創建文檔集合List<Document> ????? *?3、將文檔集合插入數據庫集合:mongoCollection.insertMany(List<Document>) ????? *?插入單個文檔可以用?:mongoCollection.insertOne(Document) ????? */ ???? private ?static ?void ?insertCollectionData( ???????????? MongoCollection<Document>?collection)?{ ???????? Document?document?=? new ?Document( "title" ,? "MongoDB" ); ???????? document.append( "description" ,? "database" ).append( "likes" ,? 100 ) ???????????????? .append( "by" ,? "Fly" ); ???????? List<Document>?documents?=? new ?ArrayList<>(); ???????? documents.add(document); ???????? collection.insertMany(documents); ???????? System.out.println( "文檔插入成功!" ); ???? } } |
本文轉自 興趣e族 51CTO博客,原文鏈接:http://blog.51cto.com/simplelife/1929886