Cum să dezvoltați MongoDB cu JavaScript

Cum Sa Dezvoltati Mongodb Cu Javascript



Unul dintre cele mai semnificative avantaje ale utilizării MongoDB pentru dezvoltatorii web este integrarea sa excelentă cu JavaScript. MongoDB oferă un driver JavaScript nativ care permite dezvoltatorilor să interacționeze direct cu baza de date folosind codul JavaScript. Acum, instalarea driverului MongoDB Node.js pe mașină este necesară înainte de a putea începe să creăm aplicațiile MongoDB în JavaScript. Trebuie să folosim următoarea comandă pentru asta:

npm i mongodb

Driverul ne permite să interacționăm cu MongoDB din codul JavaScript și să efectuăm diverse operațiuni, cum ar fi conectarea la baza de date, inserarea datelor, interogarea datelor și actualizarea datelor.







Exemplul 1: Dezvoltați o conexiune MongoDB cu JavaScript

Începeți prin a stabili conexiunea cu serverul MongoDB cu JavaScript, care poate fi realizată folosind modulul „npm”, așa cum sa discutat anterior.



const { MongoClient } = cere ( „mongodb” ) ;

const url = „mongodb:// 127.0.0.1:27017 ;
const client = nou MongoClient ( url ) ;
const dbName = „MyDB” ;

asincron funcţie principal ( ) {
așteaptă clientul. conectați ( ) ;
consolă. Buturuga ( „Conectat la server cu succes” ) ;
const db = client. db ( dbName ) ;
const Colectie = db. Colectie ( „Persoane” ) ;

întoarcere 'Terminat.' ;
}

principal ( )
. apoi ( consolă. Buturuga )
. captură ( consolă. eroare )
. in cele din urma ( ( ) => client. închide ( ) ) ;

Mai întâi importăm MongoClient necesar din modulul „mongodb” din fișierul nostru „File.js”. Apoi definim adresa URL de conectare pentru serverul MongoDB (url) și creăm o nouă instanță MongoClient folosind adresa URL specificată.



După aceea, specificăm numele bazei de date MongoDB (dbName) care va fi folosită în conexiune. Apoi, funcția asincronă main() se ocupă de operațiunile principale de pe serverul MongoDB. Aici, ne conectăm la serverul MongoDB folosind await client.connect(). Aceasta este o operațiune asincronă, astfel încât funcția se întrerupe până când conexiunea este stabilită cu succes. Putem vizualiza mesajul care apare pe prompt după ce conexiunea a fost realizată cu succes. Obținem o referință la baza de date cu numele specificat în „dbName” folosind client.db(dbName).





Apoi, obținem o referință la colecția numită „Persoane” folosind db.collection(‘Persoane’). După definirea funcției main(), apelăm main() pentru a executa operațiile. Dacă funcția main() se rezolvă cu succes, imprimă rezultatul (în acest caz, este șirul „terminat”) folosind .then(console.log). Dacă există o eroare în timpul execuției, acesta prinde eroarea și o imprimă folosind .catch(console.error). În cele din urmă, se asigură că conexiunea client MongoDB este închisă folosind .finally(() => client.close()).

Prin urmare, promptul arată mesajul în care a fost stabilită conexiunea MongoDB în fișierul JavaScript:



Exemplul 2: Inserați un document MongoDB cu JavaScript

Acum că conexiunea a fost stabilită cu serverul MongoDB, putem folosi interogările MongoDB cu JavaScript. Aici, aplicăm interogarea de inserare pentru a insera un singur document.

const { MongoClient } = cere ( „mongodb” ) ;

const url = „mongodb:// 127.0.0.1:27017 ;
const client = nou MongoClient ( url ) ;
const dbName = „MyDB” ;

asincron funcţie principal ( ) {
const db = client. db ( dbName ) ;
const Colectie = db. Colectie ( „utilizatori” ) ;
const insertDoc =
așteaptă colectarea. insertOne ( { Nume : 'Andrew' , vârstă : 23 } ) ;
consolă. Buturuga ( „Document introdus =” , insertDoc ) ;
întoarcere 'Terminat.' ;
}

principal ( )
. apoi ( consolă. Buturuga )
. captură ( consolă. eroare )
. in cele din urma ( ( ) => client. închide ( ) ) ;

Definim funcția main() ca o funcție asincronă care realizează operația de inserare a bazei de date. În interiorul acestuia, ne conectăm la serverul MongoDB folosind instanța MongoClient și adresa URL. Apoi, accesăm baza de date specificată (MyDB) folosind client.db(dbName) și obținem colecția „utilizatori” din baza de date folosind db.collection(‘utilizatori’).

După aceea, inserăm un document cu numele câmpurilor „Andrew” și vârsta de 23 de ani în colecția „utilizatori” folosind collection.insertOne(). Metoda insertOne() returnează o promisiune care se rezolvă cu rezultatul inserării. Documentul adăugat este afișat folosind console.log. În cele din urmă, închidem conexiunea client MongoDB.

Documentul care este inserat în colecția de baze de date MongoDB a fost inserat cu succes așa cum se arată în următoarea ieșire:

Exemplul 3: Găsiți un document MongoDB cu JavaScript

În mod similar, putem aplica interogarea „găsește” a MongoDB cu JavaScript pentru a găsi documentul din colecția care a fost creată în exemplul anterior.

const { MongoClient } = cere ( „mongodb” ) ;

const url = „mongodb:// 127.0.0.1:27017 ;
const client = nou MongoClient ( url ) ;
const dbName = „MyDB” ;

asincron funcţie principal ( ) {
const db = client. db ( dbName ) ;
const Colectie = db. Colectie ( „utilizatori” ) ;
const findQuery = { Nume : 'Andrew' } ;
const găsiDoc = așteaptă colectarea. găsi ( findQuery ) . toArray ( ) ;
consolă. Buturuga ( „Document =” , găsiDoc ) ;
}

principal ( )
. apoi ( consolă. Buturuga )
. captură ( consolă. eroare )
. in cele din urma ( ( ) => client. închide ( ) ) ;

Începem cu demonstrația de la funcția principală în care ne conectăm mai întâi la serverul MongoDB folosind instanța MongoClient creată și adresa URL specificată. Apoi, accesăm baza de date MyDB folosind client.db(dbName) unde dbName este numele bazei de date definit anterior.

În continuare, obținem o referință la colecția „utilizatori” din baza de date folosind db.collection(‘utilizatori’). Este creat un obiect de interogare numit „findQuery” care specifică faptul că documentele de preluat trebuie să aibă câmpul de nume egal cu „Andrew”. După aceea, efectuăm o interogare „găsește” pe colecția „utilizatori” folosind collection.find(findQuery) care returnează un cursor la documentele potrivite.

Cuvântul cheie „așteaptă” este folosit înainte de collection.find() pentru a se asigura că rezultatul este rezolvat înainte de a continua. Rezultatul operației de căutare este convertit într-o matrice de documente folosind toArray(), iar documentele găsite sunt stocate în variabila „findDoc”. Documentele sunt apoi înregistrate în consolă folosind console.log.

Ca urmare, documentul găsit al colecției MongoDB este afișat la execuție:

Exemplul 4: Actualizați un document MongoDB cu JavaScript

Apoi, efectuăm operația de „actualizare” în JavaScript pentru a actualiza documentul specificat al colecției MongoDB.

const { MongoClient } = cere ( „mongodb” ) ;

const url = „mongodb:// 127.0.0.1:27017 ;
const client = nou MongoClient ( url ) ;
const dbName = „MyDB” ;

asincron funcţie principal ( ) {
const db = client. db ( dbName ) ;
const Colectie = db. Colectie ( „utilizatori” ) ;
const updateQuery = { Nume : 'Andrew' } ;
const updateName = { $set : { Nume : 'Se' } } ;
const updateResult = așteaptă colectarea. updateOne ( updateQuery , updateName ) ;
consolă. Buturuga ( „Document actualizat =” , updateResult ) ;
întoarcere 'Terminat' ;
}

principal ( )
. apoi ( consolă. Buturuga )
. captură ( consolă. eroare )
. in cele din urma ( ( ) => client. închide ( ) ) ;

Pentru a actualiza un document din colecția „utilizatori”, invocăm funcția main(). Apoi pregătim o interogare de „actualizare” folosind { name: ‘Andrew’ } pentru a găsi documentul cu câmpul de nume egal cu „Andrew”. După aceea, setăm câmpul de nume al documentului potrivit la „Sam” folosind { $set: { name: ‘Sam’ } }.

Definim interogarea „actualizare” și operațiunea „actualizare” pentru a efectua actualizarea folosind collection.updateOne(updateQuery, updateName). Metoda updateOne() actualizează primul document care se potrivește cu interogarea „actualizare” și returnează un obiect care reprezintă rezultatul actualizării. Variabila „updateResult” conține rezultatul acțiunii de actualizare.

Ecranul de ieșire următor afișează rezultatele interogării actualizate:

Exemplul 5: Ștergeți un document MongoDB cu JavaScript

În cele din urmă, folosim metoda de ștergere a MongoDB pentru a șterge documentul anterior din MongoDB în JavaScript.

const { MongoClient } = cere ( „mongodb” ) ;

const url = „mongodb:// 127.0.0.1:27017 ;
const client = nou MongoClient ( url ) ;
const dbName = „MyDB” ;

asincron funcţie principal ( ) {
const db = client. db ( dbName ) ;
const Colectie = db. Colectie ( „utilizatori” ) ;
const deleteQuery = { Nume : 'Se' } ;
const deleteResult = așteaptă colectarea. deleteOne ( deleteQuery ) ;
consolă. Buturuga ( „Document șters =” , deleteResult ) ;
întoarcere 'Terminat' ;
}

principal ( )
. apoi ( consolă. Buturuga )
. captură ( consolă. eroare )
. in cele din urma ( ( ) => client. închide ( ) ) ;

Creăm un obiect de interogare „ștergere” numit „deleteQuery” care specifică criteriile pentru documentele care urmează să fie șterse. În acest caz, caută documente în care câmpul de nume este egal cu „Sam”. După pregătirea interogării de ștergere, aplicăm operația de ștergere reală folosind metoda deleteOne() a obiectului de colecție.

Trecem „deleteQuery” ca argument pentru „deleteOne”, care șterge primul document care îndeplinește criteriile specificate în interogare. Variabila „deleteResult” deține rezultatul acțiunii de ștergere.

Documentul specificat este șters din colecția MongoDB folosind fișierul „javascript”:

Concluzie

Acum avem o înțelegere fundamentală despre cum să folosiți MongoDB cu JavaScript prin driverul MongoDB Node.js. Am demonstrat totul cu diferitele operațiuni Mongo DB, de la conectarea până la ștergerea documentului cu JavaScript. De aici, putem construi aplicații mai complexe și putem integra MongoDB în proiectele Node.js, după cum este necesar.