Penggunaan Database dengan Express.js
Dalam artikel ini, kita akan membahas bagaimana cara mengintegrasikan database dengan aplikasi Express.js. Menghubungkan Express dengan database memungkinkan kita untuk menyimpan, mengambil, dan memanipulasi data secara dinamis. Kita akan menggunakan MongoDB sebagai database dan Mongoose sebagai ORM untuk berinteraksi dengan MongoDB.
Instalasi dan Konfigurasi MongoDB
MongoDB adalah database NoSQL yang sangat populer, mudah digunakan, dan cocok untuk aplikasi berbasis JavaScript. Anda bisa menggunakan MongoDB lokal atau layanan berbasis cloud seperti MongoDB Atlas.
Untuk memulai, pertama-tama Anda harus menginstal MongoDB di sistem Anda atau membuat akun di MongoDB Atlas. Kemudian, install Mongoose untuk berinteraksi dengan MongoDB:
$ npm install mongoose
Menyambungkan Aplikasi Express dengan MongoDB
Setelah Anda menginstal Mongoose, langkah pertama adalah menghubungkan aplikasi Express dengan MongoDB. Berikut adalah cara melakukannya:
const mongoose = require('mongoose');
// Koneksi ke MongoDB
mongoose.connect('mongodb://localhost/my_database', {
useNewUrlParser: true,
useUnifiedTopology: true
}).then(() => {
console.log('MongoDB connected');
}).catch(err => {
console.log('Connection error', err);
});
Membuat Model dengan Mongoose
Model adalah struktur data yang akan disimpan dalam database. Berikut adalah cara membuat model menggunakan Mongoose:
const mongoose = require('mongoose');
// Definisi schema
const userSchema = new mongoose.Schema({
name: String,
email: String
});
// Membuat model berdasarkan schema
const User = mongoose.model('User', userSchema);
Menambahkan Data ke Database
Setelah Anda membuat model, Anda bisa menambahkan data ke database. Berikut adalah contoh cara menambahkan data pengguna baru:
const newUser = new User({
name: 'John Doe',
email: 'johndoe@example.com'
});
// Menyimpan data ke database
newUser.save().then(() => {
console.log('User added');
}).catch(err => {
console.log('Error adding user', err);
});
Mengambil Data dari Database
Anda juga bisa mengambil data dari MongoDB menggunakan Mongoose. Berikut adalah contoh untuk mengambil semua pengguna dari database:
User.find().then(users => {
console.log(users);
}).catch(err => {
console.log('Error fetching users', err);
});
Menangani Data dan Query yang Lebih Kompleks
Mongoose memungkinkan Anda untuk melakukan query yang lebih kompleks, seperti pencarian berdasarkan kondisi tertentu. Berikut adalah contoh cara mencari pengguna berdasarkan nama:
User.find({ name: 'John Doe' }).then(users => {
console.log(users);
}).catch(err => {
console.log('Error fetching users', err);
});
Kesimpulan
Dengan menggunakan Express.js dan MongoDB, kita bisa dengan mudah membangun aplikasi backend yang dapat menyimpan dan mengambil data secara dinamis. Mongoose memberikan cara yang sederhana untuk berinteraksi dengan MongoDB, dan memungkinkan kita untuk membuat aplikasi dengan database yang scalable dan efisien.