一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 簡單學習Java+MongoDB

簡單學習Java+MongoDB

2020-04-14 11:18hebedich JAVA教程

本文給大家介紹的是如何簡單的使用java+MongoDB實現數據調用的問題,非常的實用,有需要的小伙伴可以參考下

MongoDB一些概念

下面以MongoDB和MySql的對比來說明

MySQL MongoDB
database(數據庫) db(數據庫)
table(表) collection(集合)
row(行記錄) document(文檔)
column(列) field(字段)
primary key(指定主鍵) "_id" : ObjectId("******")  自動生成內置主鍵

Mysql的數據形式如下

簡單學習Java+MongoDB

同樣的數據在MongoDB下類似于JSON鍵值對,叫BSON,如下

簡單學習Java+MongoDB

MongoDB的CRUD

windows下安裝成功后,使用mongod命令啟動服務,使用mongo命令默認連接到test庫

1,創建集合

創建user集合:db.createCollection("user")   //不需要定義字段
2,插入
插入name=wangxu,age=27的記錄:db.user.insert({"name":"wangxu","age":27})
3,查詢
查詢全部:db.user.find()
查詢name=wangxu的記錄:db.user.find({"name":"wangxu"})
4,更新
將name=wangxu的記錄age更新成30:db.user.update({name:"wangxu"},{"$set":{"age":30}})
5,刪除
刪除name=wangxu的記錄:db.user.remove({"name":"wangxu"})
刪除全部:db.user.remove()
6,刪除集合
刪除user集合: db.user.drop()

Java調用MongoDB

引入MongoDB的Java驅動包后,測試代碼如下:

?
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
package com.wx.test;
import java.util.ArrayList;
import java.util.List;
import org.bson.Document;
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;
/**
 * 測試mongodb 測試點:增加,查詢,更新,刪除
 *
 * @author wangxu
 * @date 2016-3-27
 */
public class TestMongoDB {
 public static void main(String[] args) {
 // 建立連接,MongoDB默認是沒有用戶名及密碼
 MongoClient mongoClient = new MongoClient("localhost", 27017);
 // 獲取test庫
 MongoDatabase db = mongoClient.getDatabase("test");
 // 創建集合
 db.createCollection("user");
 // 獲取集合
 MongoCollection collection = db.getCollection("user");
 // 插入文檔(支持多條)
 Document document = new Document("name", "wangxu").append("age", "27");
 Document document2 = new Document("name", "wangxu_java").append("age",
  "27");
 List<Document> documents = new ArrayList<>();
 documents.add(document);
 documents.add(document2);
 collection.insertMany(documents);
 // 更新wangxu的age為30
 collection.updateMany(Filters.eq("name", "wangxu"), new Document(
  "$set", new Document("age", 30)));
 // 查詢文檔
 FindIterable<Document> findIterable = collection.find();
 MongoCursor<Document> mongoCursor = findIterable.iterator();
 // 遍歷游標
 while (mongoCursor.hasNext()) {
  Document doc = mongoCursor.next();
  System.out.println("name=" + doc.get("name"));
 }
 // 刪除wangxu_java
 collection.deleteMany(Filters.eq("name", "wangxu_java"));
 }
}

關于Java驅動包的一個疑問

?
1
MongoClient mongoClient = new MongoClient("域不存在", 27017); //建立連接

當我保存上面的代碼時,發現不需要處理異常,開始我以為異常被設計成了“非檢查異常”,運行時會拋出來,最后測試發現根本不會拋任何異常,后續的CRUD操作時會拋異常,但幾乎都是非檢查異常,個人感覺這種設計是不是有點不符合Java的異常分類機制?

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产亚洲欧美一区二区三区 | 白丝校花好湿好紧 | 国产成人在线综合 | 国产大胆歌舞团网站 | 99久久免费国产特黄 | 色哟呦| 精品国产日韩一区三区 | 色天天色综合 | 亚洲视频一区在线播放 | 欧美男男gaysgays | 91精品乱码一区二区三区 | 天天看黄 | 精品国产日韩亚洲一区在线 | 亚洲精品一区二区久久这里 | 精品蜜臀AV在线天堂 | 操丝袜秘书| 青青在线观看视频 | 男女小视频在线观看 | 2020国产精品永久在线观看 | 日日夜夜撸影院 | 91视频免费观看网站 | 日本人妖网站 | 免费日批视频 | 久久精品视频在线看 | 成人精品一级毛片 | aⅴ视频在线免播放观看 | 深夜福利影院在线观看 | 奇米888在线看奇米999 | 国产精品欧美亚洲韩国日本99 | 国产香蕉97碰碰在线视频 | 人人爽人人香蕉 | 秀婷程仪公欲息肉婷在线观看 | 久久电影午夜 | 天天天做天天天天爱天天想 | 视频一区国产精戏刘婷30 | 欧美一级专区免费大片 | 国产亚洲人成网站天堂岛 | 亚洲一区二区三区在线播放 | 久久精品一区二区三区资源网 | 喜马拉雅听书免费版 | 日本午夜vr影院新入口 |