เริ่มต้นด้วย MongoDB และ NodeJS อย่างไร

ไม่แน่ใจว่าจะใช้ MongoDB กับ NodeJS ได้อย่างไร ไม่ต้องกังวล คู่มือนี้จะช่วยคุณ.


การเริ่มต้นกับ NodeJS

ในบทความก่อนหน้าฉันกล่าวถึงรายละเอียดขั้นตอนเพื่อให้คุณเริ่มต้นกับ MongoDB บทความนี้กล่าวถึงรายละเอียดเกี่ยวกับกระบวนการติดตั้งรวมถึงคำศัพท์ที่เราใช้ใน MongoDB.

NodeJS เป็นเทคโนโลยีแบ็กเอนด์ที่ใช้ Javascript ที่ได้รับความนิยมซึ่งทำงานบนเอ็นจิ้น Javascript V8 ของ Google Chrome NodeJS ได้รับความนิยมอย่างมากในฐานะภาษาแบ็กเอนด์เนื่องจากคำขอลดค่าใช้จ่ายและมีอิสระในการเขียนโค้ดใน Javascript.

เป็นเฟรมเวิร์กที่ใช้ JavaScript ช่วยให้ผู้เชี่ยวชาญการพัฒนาส่วนหน้าเริ่มต้นใช้งาน NodeJS แบ็คเอนด์ได้อย่างง่ายดาย.

ส่วนนี้ครอบคลุมโดยย่อเกี่ยวกับการตั้งค่าสภาพแวดล้อม NodeJS และ เขียนรหัส NodeJS แรกของคุณ.

การติดตั้ง NodeJS ค่อนข้างตรงไปตรงมา.

หากต้องการติดตั้ง NodeJS ตรงไปที่ ดาวน์โหลด หน้าเว็บไซต์ NodeJS ดาวน์โหลดการตั้งค่าที่สอดคล้องกับระบบปฏิบัติการของคุณ ในการดำเนินการตั้งค่าจะนำคุณไปสู่การติดตั้งที่เข้าใจง่าย.

ตรวจสอบให้แน่ใจว่าคุณติดตั้ง Node Package Manager (NPM) พร้อมกับการติดตั้ง Node เมื่อการตั้งค่าเสร็จสมบูรณ์คุณสามารถตรวจสอบการติดตั้งโดยใช้คำสั่งด้านล่าง.

$ node -v
v8.11.1

เมื่อคุณติดตั้งโหนดแล้วให้สร้างไฟล์ Javascript อย่างง่ายและเรียกใช้งานด้วยโหนด.

สร้างไฟล์ index.js ในไดเรกทอรีที่คุณเลือกและเพิ่มโค้ดด้านล่างลงไป.

console.log (‘นี่คือแอปพลิเคชันโหนดแรกของฉัน’);
ปล่อยให้ = 5;
ให้ b = 10;
console.log ( ‘A + B =’ + (A + B));

เมื่อคุณบันทึกไฟล์แล้วให้เปิด Terminal หรือพรอมต์คำสั่ง นำทางไปยังไดเรกทอรีที่บันทึกไฟล์และเรียกใช้งานคำสั่งตามที่แสดงด้านล่าง.

$ node index.js

เอ็นจิ้นโหนดเรียกใช้งานโค้ดในไฟล์และเอาต์พุตข้อความสั่งที่เกี่ยวข้องในเทอร์มินัล ผลลัพธ์ของคำสั่งดังกล่าวจะเป็นด้านล่าง.

นี่เป็นแอปพลิเคชันโหนดแรกของฉัน
A + B = 15

การติดตั้ง NodeJS Plugin สำหรับ MongoDB

ตอนนี้คุณมีฐานข้อมูลและการติดตั้งแบ็กเอนด์โหนดแล้วให้ดำเนินการสร้างโครงการ NodeJS อย่างง่ายที่สามารถแทรกข้อมูลลงในและดึงข้อมูลจากฐานข้อมูล.

ใน NodeJS งานเกือบทุกอย่างถูกสร้างขึ้นโดยปลั๊กอินที่มีอยู่ คล้ายกับไดรเวอร์ฐานข้อมูลใน Java ปลั๊กอิน MongoDB ใน NodeJS ช่วยในการสื่อสารกับฐานข้อมูลด้วยคำสั่งที่ตรงไปตรงมามากขึ้น.

Node Package Manager (NPM) เป็นปลั๊กอินที่ใช้ในการติดตั้งปลั๊กอิน NodeJS จำนวนมากด้วยคำสั่งเดียว.

ในการเริ่มต้นให้สร้างไดเรกทอรีฝึกปฏิบัติและเริ่มต้นมันสำหรับโครงการโหนดโดยใช้คำสั่งด้านล่าง.

บันทึก: แม้ว่าจะมี IDEs จำนวนมากสำหรับ NodeJS แต่ฉันก็พบ Microsoft Visual Code เป็นมิตรกับผู้ใช้มากที่สุด ดาวน์โหลดฟรีเพื่อทำให้กระบวนการง่ายขึ้น.

เริ่มต้น $ npm
.
.
.

กด ^ C เมื่อใดก็ได้เพื่อออก.
ชื่อแพ็กเกจ: (node_practice)
รุ่น: (1.0.0)
คำอธิบาย: โหนด JS ถึง Mongo DB
จุดเริ่มต้น: (index.js)
คำสั่งทดสอบ:
ที่เก็บ git:
คำหลัก:
ผู้เขียน:
ใบอนุญาต: (ISC)
เกี่ยวกับการเขียนถึง /Users/abhishekkothari/Desktop/node_practice/package.json:

{
"ชื่อ": "node_practice",
"รุ่น": "1.0.0",
"ลักษณะ": "โหนด JS เป็น Mongo DB ",
"หลัก": "index.js",
"สคริปต์": {
"ทดสอบ": "echo \"ข้อผิดพลาด: ไม่ได้ระบุการทดสอบ \" && ทางออก 1"
},
"ผู้เขียน": "",
"อนุญาต": "ISC"
}

ตกลงไหม (ใช่)

ดังนั้นโฟลเดอร์จะถูกเริ่มต้นและตอนนี้มี package.json ไฟล์.

ไฟล์ package.json นี้เก็บรายละเอียดของปลั๊กอินที่จะติดตั้งลงในไดเรกทอรี.

ในการติดตั้งปลั๊กอิน MongoDB สำหรับ NodeJS ให้พิมพ์คำสั่งด้านล่าง.

$ npm ติดตั้ง – บันทึก MongoDB

คำสั่งนี้จะติดตั้งปลั๊กอิน node_modules ไดเรกทอรีพร้อมกับการอ้างอิงที่จำเป็น การตั้งค่าสถานะ – บันทึกทำให้แน่ใจว่าปลั๊กอินถูกเพิ่มเข้าไปในรายการของการอ้างอิงใน package.json ที่แสดงด้านล่าง.

"การอ้างอิง": {
"MongoDB": "^ 3.0.10"
}

การเชื่อมต่อและการแทรกเอกสารแรก

เมื่อติดตั้งปลั๊กอินที่จำเป็นแล้วก็ถึงเวลาแทรกเอกสารแรกของเรา เอกสารใน MongoDB เป็นบันทึกเดียวที่แทรกลงในหนึ่งในตารางในฐานข้อมูล.

ในการเริ่มต้นให้เริ่มบริการ MongoDB โดยใช้คำสั่งด้านล่าง.

$ ./mongod –dbpath =

ในกรณีของ Windows ให้ใช้คำสั่งด้านล่าง.

> "C: \ Program Files \ MongoDB \ Server \ 3.6 \ bin \ mongod.exe"

เริ่มต้นด้วยรหัส nodeJS แรกของเราเพื่อเชื่อมต่อกับฐานข้อมูล สร้างไฟล์ index.js เพื่อเริ่มต้น เพิ่มรหัสด้านล่างในไฟล์.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;

var url = "MongoDB: // localhost: 27017 / newdb";

MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
db.close ();
});

นี่ newdb เป็นชื่อของฐานข้อมูลที่คุณต้องการใส่ข้อมูลของคุณมันคล้ายกับ schema ใน MySQL.

อย่างไรก็ตามความแตกต่างในกรณีของ MongoDB คือถ้าคุณยังไม่ได้สร้างฐานข้อมูลปลั๊กอินจะสร้างให้คุณ ในการแทรกเอกสารฉบับแรกให้อัพเดต index.js เพื่อแสดงรหัสด้านล่าง.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;

var url = "MongoDB: // localhost: 27017 / newdb";

MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
var dbo = db.db ("newdb");
dbo.collection ("นักเรียน") .insertOne ({"ชื่อ":"Abhishek","เครื่องหมาย": 100}, ฟังก์ชั่น (err, res) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("แทรกเอกสาร 1 ฉบับแล้ว");
db.close ();
});
});

เพื่อประหยัดความพยายามในการเรียกใช้ไฟล์ใหม่ทุกครั้งคุณสามารถเลือกติดตั้งปลั๊กอินได้ nodemon. Nodemon ตรวจสอบการเปลี่ยนแปลงไฟล์ใด ๆ และเรียกใช้ไฟล์โดยอัตโนมัติอีกครั้งเมื่อมีการเปลี่ยนแปลง.

หากต้องการติดตั้ง nodemon ให้ใช้คำสั่ง npm npm install -g nodemon.

อ็อพชัน -g ติดตั้ง nodemon แบบโกลบอล ดังนั้นจึงสามารถใช้งานได้ในทุก ๆ โหนดโครงการในอนาคต.

เริ่ม nodemon โดยใช้คำสั่ง nodemon อย่างง่าย.

หากทุกอย่างเป็นไปด้วยดีเอกสารแรกจะถูกแทรกลงในคอลเล็กชันชื่อ นักเรียน. ดังที่คุณอาจสังเกตเห็นว่าคุณไม่จำเป็นต้องสร้างตารางก่อน.

ตารางจะถูกสร้างขึ้นโดยอัตโนมัติเมื่อคุณแทรกเอกสารแรกลงในเอกสาร.

การแทรกเอกสารหลายชุด

ฟังก์ชัน MongoDB บนสตริง JSON ดังนั้นการแทรกหลายเอกสารไปยัง MongoDB จึงค่อนข้างง่าย สิ่งที่คุณต้องทำคือการส่งอาร์เรย์ JSON ไปยังฟังก์ชันที่เหมาะสมเพื่อแทรกเอกสารหลาย ๆ ชุด.

มาอัปเดตรหัสเพื่อแทรกเอกสารหลายฉบับ.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;
var url = "MongoDB: // localhost: 27017 / newdb";
MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) throwerr;
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
vardbo = db.db ("newdb");
dbo.collection ("นักเรียน") .insertMany ([{"ชื่อ":"จอห์น","เครื่องหมาย": 90}, {"ชื่อ":"ทิม","เครื่องหมาย": 80}], ฟังก์ชั่น (ผิดพลาด, res) {
ถ้า (err) throwerr;
console.log ("แทรกเอกสารแล้ว");
db.close ();
});
});

ตามที่สามารถสังเกตได้มีการเปลี่ยนแปลงสองประการในรหัส ฟังก์ชั่นเปลี่ยนเป็น insertMany และอาร์กิวเมนต์แรกคืออาร์เรย์ JSON ดังนั้นเอกสารที่ส่งผ่านเป็นอาร์เรย์ JSON จะถูกแทรกเข้าไป.

ดูกรองและลบบันทึก

ดูบันทึก

คล้ายกับฟังก์ชั่นแทรกสำหรับการแทรกเอกสารฟังก์ชั่นบันทึกมุมมองยังยอมรับตัวกรองที่ใช้ JSON.

เพื่อดูบันทึกทั้งหมดจากตารางนักเรียนดำเนินการรหัสด้านล่าง.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;

var url = "MongoDB: // localhost: 27017 / newdb";

MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
var dbo = db.db ("newdb");
var results = dbo.collection ("นักเรียน").หา({});
results.forEach (แถว => {
console.log (แถว);
});
});

การเรียกใช้ฟังก์ชัน find ({}) ใช้เวลาใน JSON ที่ว่างเปล่าดังนั้นจึงส่งคืนเอกสารทั้งหมดที่มีในฐานข้อมูล เอาต์พุตสำหรับโค้ดด้านบนจะคล้ายกับที่แสดงด้านล่าง.

เชื่อมต่อฐานข้อมูลแล้ว!
{_id: 5b1a1d323c5f4617b1263e49, ชื่อ: ‘Abhishek’, คะแนน: 100}
{_id: 5b1a20afb57cd517da966113, ชื่อ: ‘John’, เครื่องหมาย: 90}
{_id: 5b1a20afb57cd517da966114, ชื่อ: ‘Tim’, คะแนน: 80}

กรองข้อมูล

ในการกรองข้อมูลทั้งหมดที่คุณต้องทำคือส่งแอตทริบิวต์ตัวกรองเป็น JSON ในฟังก์ชัน find ({}) ด้านบน รหัสจะมีลักษณะคล้ายกับที่แสดงด้านล่าง.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;

var url = "MongoDB: // localhost: 27017 / newdb";

MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
var dbo = db.db ("newdb");
var results = dbo.collection ("นักเรียน") ประจำวันหา ({เครื่องหมาย: 90});
results.forEach (แถว => {
console.log (แถว);
});
});

ที่นี่เรากรองระเบียนที่มีเครื่องหมายเท่ากับ 90 ผลลัพธ์สำหรับโค้ดด้านบนจะคล้ายกับรายการที่แสดงด้านล่าง.

เชื่อมต่อฐานข้อมูลแล้ว!
{_id: 5b1a20afb57cd517da966113, ชื่อ: ‘John’, เครื่องหมาย: 90}

เพื่อความเข้าใจเพิ่มเติมเกี่ยวกับสตริงตัวกรองคุณสามารถไปที่ ลิงค์นี้.

ลบบันทึก

ในที่สุดก็ถึงเวลาที่จะลบบันทึก การดำเนินการลบใน MongoDB โดยใช้ NodeJS นั้นคล้ายกับการค้นหาแถว.

เกณฑ์ที่จะจัดทำโดยใช้ JSON ที่เป็นไปตามรูปแบบเกณฑ์สตริงตัวกรอง ตัวอย่างรหัสสำหรับลบระเบียนที่มีเครื่องหมาย = 90 แสดงไว้ด้านล่าง.

var mongo = ต้องการ (‘mongodb’)
var MongoClient = ต้องการ (‘mongodb’) MongoClient;

var url = "MongoDB: // localhost: 27017 / newdb";

MongoClient.connect (URL,
ฟังก์ชั่น (err, db) {
ถ้า (err) เกิดข้อผิดพลาด
console.log ("เชื่อมต่อฐานข้อมูลแล้ว!");
var dbo = db.db ("newdb");
dbo.collection ("นักเรียน") remove ({เครื่องหมาย: 90});
var results = dbo.collection ("นักเรียน") ประจำวันหา ({เครื่องหมาย: 90});
ถ้า (! results.count == 0) {
console.log (‘ไม่พบบันทึก’);
}
results.forEach (แถว => {
console.log (แถว);
});
});

รหัสด้านบนจะลบระเบียนที่มีเครื่องหมาย = 90 แล้วตรวจสอบว่ามีระเบียนอยู่หรือไม่.

โค้ดด้านบนให้เอาต์พุตคล้ายกับโค้ดที่แสดงด้านล่าง:

เชื่อมต่อฐานข้อมูลแล้ว!
ไม่พบบันทึก

ฉันหวังว่านี่จะช่วยให้คุณมีความคิดเกี่ยวกับการใช้ MongoDB กับแอปพลิเคชัน Node.js คุณอาจสนใจเรียนรู้เพิ่มเติมด้วย เรียนหลักสูตรออนไลน์นี้.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map