Node.js - MongoDB Temukan
Halo sana, para programer yang sedang belajar! Hari ini, kita akan mengemban perjalanan yang menarik ke dalam dunia Node.js dan MongoDB. Khususnya, kita akan mengeksplorasi bagaimana mengambil data dari database MongoDB menggunakan Node.js. Jangan khawatir jika Anda baru dalam hal ini - kita akan mulai dari dasar dan naik tingkat per tingkat. Pada akhir panduan ini, Anda akan menemukan dokumen seperti seorang ahli!
Pengenalan ke MongoDB dan Node.js
Sebelum kita masuk ke detil cara menemukan dokumen, mari kitaambil sedikit waktu untuk memahami apa itu MongoDB dan Node.js.
MongoDB adalah database NoSQL populer yang menyimpan data dalam dokumen fleksibel, mirip JSON. Itu seperti sebuah lemari filing digital raksasa tempat Anda dapat menyimpan berbagai jenis informasi.
Node.js, di sisi lain, adalah runtime JavaScript yang memungkinkan Anda menjalankan JavaScript di komputer Anda, di luar browser web. Itu seperti memberikan superpower JavaScript untuk berinteraksi dengan sistem file, jaringan, dan dalam kasus kita, database seperti MongoDB.
Sekarang, mari kita mulai coding!
Menyiapkan Lingkungan Kerja
Pertama-tama, kita perlu mengatur proyek kita. Berikut ini apa yang Anda butuhkan:
- Install Node.js dari situs web resmi jika Anda belum melakukan itu.
- Buat direktori baru untuk proyek Anda.
- Buka terminal di direktori itu dan jalankan
npm init -y
untuk membuat file package.json. - Install driver MongoDB dengan menjalankan
npm install mongodb
.
Bagus! Sekarang kita siap untuk mulai coding.
Menghubungkan ke MongoDB
Sebelum kita dapat menemukan dokumen apapun, kita perlu menghubungkan ke database MongoDB kita. Berikut ini cara kita melakukan itu:
const { MongoClient } = require('mongodb');
const url = 'mongodb://localhost:27017';
const dbName = 'myProject';
async function connectToDatabase() {
const client = new MongoClient(url);
try {
await client.connect();
console.log('Berhasil terhubung ke database');
const db = client.db(dbName);
return db;
} catch (error) {
console.error('Gagal terhubung ke database', error);
throw error;
}
}
mari kitauraikan ini:
- Kita mengimpor
MongoClient
dari paket mongodb. - Kita menentukan URL di mana server MongoDB kita berjalan dan nama database kita.
- Kita membuat fungsi async
connectToDatabase()
yang menjalankan koneksi ke server MongoDB kita. - Jika koneksi sukses, kita kembalikan objek database. Jika tidak, kita log kesalahan.
Membaca Semua Dokumen
Sekarang kita terhubung, mari kita belajar bagaimana mengambil semua dokumen dari sebuah koleksi. Kita akan menggunakan metode find()
untuk ini.
async function findAllDocuments(db, collectionName) {
const collection = db.collection(collectionName);
try {
const documents = await collection.find({}).toArray();
console.log('Ditemukan dokumen berikut:');
console.log(documents);
return documents;
} catch (error) {
console.error('Kesalahan menemukan dokumen:', error);
throw error;
}
}
Berikut ini apa yang terjadi:
- Kita mendapatkan referensi ke koleksi kita menggunakan
db.collection(collectionName)
. - Kita menggunakan
find({})
untuk mengambil semua dokumen. Object kosong{}
berarti kita tidak menerapkan filter apapun. - Kita konversi hasilnya ke array menggunakan
toArray()
. - Kita log dan kembalikan dokumen.
Untuk menggunakan fungsi ini, Anda akan melakukan seperti ini:
async function main() {
const db = await connectToDatabase();
await findAllDocuments(db, 'users');
}
main().catch(console.error);
Menggunakan findOne()
kadang-kadang, Anda hanya perlu mengambil satu dokumen saja. Itu di mana findOne()
berguna. Mari kita buat fungsi untuk ini:
async function findOneDocument(db, collectionName, query) {
const collection = db.collection(collectionName);
try {
const document = await collection.findOne(query);
if (document) {
console.log('Ditemukan satu dokumen:');
console.log(document);
} else {
console.log('Tidak ada dokumen yang cocok dengan query.');
}
return document;
} catch (error) {
console.error('Kesalahan menemukan dokumen:', error);
throw error;
}
}
Berikut ini apa yang fungsi ini lakukan:
- Kita menggunakan
findOne(query)
untuk mengambil satu dokumen yang cocok dengan query kita. - Jika dokumen ditemukan, kita log dan kembalikan dokumen itu. Jika tidak, kita log pesan yang mengatakan bahwa tidak ada dokumen yang cocok.
Anda akan menggunakan fungsi ini seperti ini:
async function main() {
const db = await connectToDatabase();
await findOneDocument(db, 'users', { name: 'John Doe' });
}
main().catch(console.error);
Ini akan menemukan pengguna pertama dengan nama 'John Doe'.
Tabel Metode
Berikut ini tabel praktis dari metode yang kita pelajari:
Metode | Deskripsi | Contoh |
---|---|---|
find() |
Mengambil beberapa dokumen | collection.find({}) |
findOne() |
Mengambil satu dokumen | collection.findOne({ name: 'John' }) |
Kesimpulan
Selamat! Anda baru saja belajar bagaimana menemukan dokumen di MongoDB menggunakan Node.js. Kita telah menjelajahi penghubung ke database, mengambil semua dokumen, dan menemukan dokumen tunggal. Ini adalah keterampilan fundamental yang Anda akan gunakan dalam hampir setiap proyek MongoDB.
Ingat, latihan membuat sempurna. Cobalah membuat proyek kecil di mana Anda dapat menerapkan konsep-konsep ini. Mungkin sebuah buku alamat sederhana atau daftar tugas? Kemungkinan adalah tak terbatas!
Selamat coding, dan semoga query Anda selalu mengembalikan dokumen yang Anda cari!
Credits: Image by storyset