Maison >interface Web >js tutoriel >Intégration de MongoDB avec Node.js – Un guide complet
MongoDB est l'une des bases de données NoSQL les plus populaires, largement utilisée par les développeurs pour créer des applications évolutives et flexibles. Avec Node.js, qui est une plate-forme largement adoptée pour le développement back-end, vous pouvez créer des API efficaces et des applications robustes. Dans cet article de blog, nous explorerons comment configurer MongoDB avec Node.js, de l'installation à l'exécution d'opérations CRUD de base (Créer, Lire, Mettre à jour, Supprimer).
MongoDB est une base de données NoSQL orientée document. Au lieu de stocker les données dans des tables, comme dans les bases de données relationnelles, MongoDB stocke les documents au format JSON, appelé BSON (Binary JSON). Cela offre une flexibilité dans la modélisation des données et facilite l'évolutivité horizontale.
Tout d’abord, vous devez installer MongoDB. En fonction de votre système d'exploitation, suivez les instructions sur le site officiel d'installation de MongoDB.
Créez un nouveau répertoire pour votre projet et démarrez un projet Node.js :
mkdir mongo-node-app cd mongo-node-app npm init -y
L'étape suivante consiste à installer le pilote MongoDB officiel pour Node.js :
npm install mongodb
Maintenant, créez un fichier index.js pour configurer la connexion à MongoDB. Nous utiliserons MongoClient pour nous connecter à la base de données.
const { MongoClient } = require('mongodb'); async function connectDB() { const uri = "mongodb://localhost:27017"; // URL do MongoDB local const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true }); try { await client.connect(); console.log("Conectado ao MongoDB"); const db = client.db("mydatabase"); return db; } catch (err) { console.error("Erro ao conectar ao MongoDB", err); } finally { // Fechar a conexão await client.close(); } } connectDB();
Pour ajouter des documents à la collection, nous pouvons utiliser la méthode insertOne() ou insertMany().
async function createDocument(db) { const collection = db.collection("users"); const newUser = { name: "Lucas", age: 25, email: "lucas@example.com" }; const result = await collection.insertOne(newUser); console.log(`Documento inserido com o ID: ${result.insertedId}`); }
Pour rechercher des documents dans une collection, nous utilisons find() ou findOne().
async function readDocuments(db) { const collection = db.collection("users"); const users = await collection.find({ age: { $gte: 18 } }).toArray(); console.log(users); }
Pour mettre à jour un document, nous utilisons updateOne() ou updateMany().
async function updateDocument(db) { const collection = db.collection("users"); const result = await collection.updateOne( { name: "Lucas" }, { $set: { email: "lucas.new@example.com" } } ); console.log(`Documentos atualizados: ${result.modifiedCount}`); }
Pour supprimer des documents, nous utilisons deleteOne() ou deleteMany().
async function deleteDocument(db) { const collection = db.collection("users"); const result = await collection.deleteOne({ name: "Lucas" }); console.log(`Documentos deletados: ${result.deletedCount}`); }
Pour un projet à grande échelle, il est préférable de modulariser la connexion MongoDB et les opérations CRUD. Par exemple, nous pouvons avoir un module de connexion séparé et des services dédiés pour chaque entité.
// db.js const { MongoClient } = require('mongodb'); const uri = "mongodb://localhost:27017"; const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true }); async function connectDB() { await client.connect(); const db = client.db("mydatabase"); return db; } module.exports = { connectDB };
// index.js const { connectDB } = require('./db'); async function main() { const db = await connectDB(); // Executar operações de CRUD await createDocument(db); await readDocuments(db); await updateDocument(db); await deleteDocument(db); } main();
MongoDB et Node.js forment une combinaison puissante pour créer des API évolutives et des applications Web modernes. Grâce à la flexibilité de MongoDB et à l'environnement JavaScript de Node.js, vous pouvez manipuler les données rapidement et efficacement. Ce guide fournit une base solide pour intégrer MongoDB dans votre projet Node.js, de la configuration initiale aux opérations CRUD.
Si vous souhaitez approfondir le sujet, envisagez d'explorer davantage de fonctionnalités telles que l'indexation, les agrégations et la réplication dans MongoDB.
Conseils finaux :
J'espère que ce guide vous a été utile pour intégrer MongoDB à Node.js !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!