a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁(yè) > 數(shù)據(jù)庫(kù) > MongoDB > 正文

mongodb driver使用代碼詳解

2020-10-29 18:40:40
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由 C++ 語(yǔ)言編寫。旨在為 WEB 應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。

0 前言

全是干貨的技術(shù)殿堂

文章收錄在我的 GitHub 倉(cāng)庫(kù),歡迎Star/fork:

Java-Interview-Tutorial

https://github.com/Wasabi1234/Java-Interview-Tutorial

mongodb-driver是mongo官方推出的java連接mongoDB的驅(qū)動(dòng)包,相當(dāng)于JDBC驅(qū)動(dòng)。我們現(xiàn)在來(lái)使用mongodb-driver完成對(duì)Mongodb的操作。

1 環(huán)境準(zhǔn)備

創(chuàng)建工程,并添加以下依賴:

<dependency>  <groupId>org.mongodb</groupId>  <artifactId>mongodb-driver</artifactId>  <version>3.10.1</version> </dependency>

2 使用mongodb-driver

2.1 查詢所有

@Test public void test1() {  //創(chuàng)建連接  MongoClient client = new MongoClient("192.168.200.128"); //打開數(shù)據(jù)庫(kù)  MongoDatabase commentdb = client.getDatabase("commentdb");  //獲取集合  MongoCollection<Document> comment = commentdb.getCollection("comment");  //查詢  FindIterable<Document> documents = comment.find();  //查詢記錄獲取文檔集合  for (Document document : documents) {  System.out.println("_id:" + document.get("_id"));  System.out.println("內(nèi)容:" + document.get("content"));  System.out.println("用戶ID:" + document.get("userid"));  System.out.println("點(diǎn)贊數(shù):" + document.get("thumbup")); } //關(guān)閉連接  client.close();  } } 

2.2 根據(jù)_id查詢

每次使用都要用到MongoCollection,進(jìn)行抽取:

private MongoClient client; private MongoCollection<Document> comment; @Before public void init() {  //創(chuàng)建連接  client = new MongoClient("192.168.200.128");  //打開數(shù)據(jù)庫(kù)  MongoDatabase commentdb = client.getDatabase("commentdb");  //獲取集合  comment = commentdb.getCollection("comment"); }@After public void after() {  client.close(); }@Test public void test2() {  //查詢  FindIterable<Document> documents = comment.find(new BasicDBObject("_id", "1"));  //查詢記錄獲取文檔集合  for (Document document : documents) {  System.out.println("_id:" + document.get("_id"));  System.out.println("內(nèi)容:" + document.get("content"));  System.out.println("用戶ID:" + document.get("userid"));  System.out.println("點(diǎn)贊數(shù):" + document.get("thumbup"));  } }

2.3 新增

@Test public void test3() {  Map<String, Object> map = new HashMap();  map.put("_id", "6");  map.put("content", "很棒!");  map.put("userid", "9999");  map.put("thumbup", 123);  Document document = new Document(map);  comment.insertOne(document); }

2.4 修改

@Test public void test4() {  //修改的條件  Bson filter = new BasicDBObject("_id", "6");  //修改的數(shù)據(jù)  Bson update = new BasicDBObject("$set", new Document("userid", "8888")); comment.updateOne(filter, update); }

2.5 刪除

@Test public void test5() {  //刪除的條件  Bson filter = new BasicDBObject("_id", "6");  comment.deleteOne(filter); }

MongoDB優(yōu)勢(shì)與劣勢(shì)

優(yōu)勢(shì):

1、在適量級(jí)的內(nèi)存的MongoDB的性能是非常迅速的,它將熱數(shù)據(jù)存儲(chǔ)在物理內(nèi)存中,使得熱數(shù)據(jù)的讀寫變得十分快。
2、MongoDB的高可用和集群架構(gòu)擁有十分高的擴(kuò)展性。
3、在副本集中,當(dāng)主庫(kù)遇到問題,無(wú)法繼續(xù)提供服務(wù)的時(shí)候,副本集將選舉一個(gè)新的主庫(kù)繼續(xù)提供服務(wù)。
4、MongoDB的Bson和JSon格式的數(shù)據(jù)十分適合文檔格式的存儲(chǔ)與查詢。

劣勢(shì):

1、 不支持事務(wù)操作。MongoDB本身沒有自帶事務(wù)機(jī)制,若需要在MongoDB中實(shí)現(xiàn)事務(wù)機(jī)制,需通過一個(gè)額外的表,從邏輯上自行實(shí)現(xiàn)事務(wù)。
2、 應(yīng)用經(jīng)驗(yàn)少,由于NoSQL興起時(shí)間短,應(yīng)用經(jīng)驗(yàn)相比關(guān)系型數(shù)據(jù)庫(kù)較少。
3、MongoDB占用空間過大。

總結(jié)

到此這篇關(guān)于mongodb driver使用代碼詳解的文章就介紹到這了,更多相關(guān)mongodb driver使用 內(nèi)容請(qǐng)搜索武林網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持武林網(wǎng)!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 欧美日韩精品中文字幕 | 国产成人精品亚洲777人妖 | 欧美日韩精品 | 免费黄色在线观看 | 性视频亚洲 | 成人免费高清 | 一区二区中文字幕在线观看 | 午夜影院在线观看 | 中文字幕av一区二区三区 | 成人av综合| 草草久久久 | 欧美专区在线 | 久久久久无码国产精品一区 | 欧美日韩亚洲一区二区 | 国产精品久久久久国产a级 91国内外精品自在线播放 | 羞羞视频免费观看入口 | 精品欧美 | 最新日韩视频 | 成人免费的视频 | 狠狠的干 | 国产精品99精品久久免费 | 在线日本视频 | 麻豆视频91 | 亚洲免费在线 | 射久久| www.亚洲| 在线观看亚洲一区二区 | 日韩精品欧美在线 | 欧美成人一区二免费视频软件 | 免费国产视频 | 久久久久亚洲精品国产 | 亚洲精品国产第一综合99久久 | 久久久一 | 国产在线精品成人免费怡红院 | 亚洲高清视频在线 | 精品一区电影国产 | 黄色小电影网址 | 一区二区三区四区在线 | aaaa大片| 黄色免费网站观看 | 亚洲a级 |