国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Nodejs使用Mongodb存儲與提供后端CRD服務詳解

2024-05-06 15:30:42
字體:
來源:轉載
供稿:網友

前言

眾所周知JS是腳本語言,腳本語言都需要一個解析器才能運行。對于寫在HTML頁面里的JS,瀏覽器充當了解析器的角色。而對于需要獨立運行的JS,NodeJS就是一個解析器。

每一種解析器都是一個運行環境,不但允許JS定義各種數據結構,進行各種計算,還允許JS使用運行環境提供的內置對象和方法做一些事情。例如運行在瀏覽器中的JS的用途是操作DOM,瀏覽器就提供了document之類的內置對象。而運行在NodeJS中的JS的用途是操作磁盤文件或搭建HTTP服務器,NodeJS就相應提供了fs、http等內置對象。

本文會把一個對象todo對象(有屬性{id,name})存儲到Mongodb,做查詢刪除的測試(Create Remove Delete = CRD)。這個測試包括使用Mongodb Shell,使用CallBack古典風格的訪問代碼,以及使用Await/Async的現代風格的代碼。完成這個這個驗證后,就可以掌握最初步的Mongodb了。

我使用的Nodejs是10.7 。操作系統環境為Mac OS X High Sierra。

準備環境

安裝和運行Mongodb Daemon

brew install mongodbmongodb

訪問驗證

首先執行Mongodb Shell:

mongo

輸入命令,查詢數據庫清單:

> show dbslocal  0.000GB

創建一個數據庫

use todos

(若database不存在,則會創建一個,此時若不做任何操作直接退出,則MongoDB會刪除該數據庫)

db.todos.insert({id:1,name:"reco"})db.todos.insert({id:2,name:"rita"})

查詢 :

db.todos.find(){ "_id" : ObjectId("5b727c0846b6c71a98d3af52"), "id" : 1, "name" : "reco" }{ "_id" : ObjectId("5b727c7046b6c71a98d3af53"), "id" : 2, "name" : "reta" }

刪除記錄:

db.todo.remove({id:1})

刪除數據庫

db.todo.drop()

使用nodejs方式訪問Mongodb

使用nodejs執行類似Shell對對象的CRD,代碼如下:

var MongoClient = require('mongodb').MongoClient;var url = "mongodb://localhost:27017/todos";MongoClient.connect(url, function(err, db) { if (err) throw err; console.log("Database created!"); var dbo = db.db("todos"); // var myobj = { id: 1, name: "reco" }; // dbo.collection("todo").insertOne(myobj, function(err, res) { // if (err) throw err; // console.log("1 document inserted"); // db.close(); // }); var myobj = [ { id: 1, name: 'reco'}, { id: 2, name: 'rita'}, ]; dbo.collection("todo").insertMany(myobj, function(err, res) { if (err) throw err; console.log("Number of documents inserted: " + res.insertedCount); dbo.collection("todo").find({}).toArray(function(err, result) { if (err) throw err; console.log(result); var myquery = { id: 1 }; dbo.collection("todo").deleteMany(myquery, function(err, obj) { if (err) throw err; console.log("document deleted"); db.close(); }); });  });})            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 临武县| 陆良县| 海丰县| 津市市| 介休市| 金溪县| 来宾市| 德格县| 婺源县| 秭归县| 永靖县| 祁连县| 彝良县| 元谋县| 饶河县| 玉溪市| 临海市| 攀枝花市| 仁布县| 伊宁市| 进贤县| 石门县| 大关县| 民乐县| 宝山区| 门头沟区| 阿合奇县| 藁城市| 通化市| 基隆市| 蚌埠市| 维西| 三江| 嘉禾县| 泊头市| 宁化县| 比如县| 米林县| 共和县| 城固县| 阿坝县|