AnnuncioTi presentiamo MongoDB 8.0, il MongoDB più veloce di sempre! Leggi > >>
AnnuncioVoyage AI si unisce a MongoDB per potenziare applicazioni AI più accurate e affidabili su Atlas. Scopra di più > >>

Java e MongoDB

Prova MongoDB Atlas gratuitamente

Data la popolarità sia di Java che di MongoDB, non sorprende che funzionino bene insieme.

Indipendentemente dal fatto che tu stia sviluppando su un'installazione MongoDB locale o on-premise, o scegliendo la modalità cloud-first con MongoDB Atlas, il driver Java di MongoDB e l'ecosistema circostante rendono semplice integrare MongoDB nel tuo processo di sviluppo.

In questo articolo, approfondiremo i seguenti punti:

Perché utilizzare MongoDB con Java?

Java è uno dei linguaggi di programmazione più popolari, e a ragione. Rilasciato per la prima volta nel 1995, da allora Java ha mantenuto una notevole presa sulla comunità degli sviluppatori. È l'ideale per diversi settori, tra cui i Financial Services, la sanità e persino il settore pubblico. Java è orientato agli oggetti e WORA (scrivi una volta, esegui ovunque), quindi può essere eseguito su tutte le piattaforme che supportano il linguaggio senza bisogno di ricompilare.

MongoDB detiene il primo posto come tecnologia di database NoSQL più popolare in diversi elenchi. È un database di documenti utilizzato per creare applicazioni Internet altamente disponibili e scalabili. Fondata nel 2007, MongoDB ha un seguito mondiale nella comunità degli sviluppatori. MongoDB si è sempre concentrato sull'offrire agli sviluppatori un'esperienza utente eccellente che, oltre a tutte le altre funzionalità, ha reso MongoDB uno dei preferiti dagli sviluppatori di tutto il mondo.

Se stai creando qualcosa di nuovo e hai bisogno di un database, prendi in considerazione l'utilizzo di MongoDB Atlas fin dall'inizio. Atlas ti offre un servizio di database cloud-native completamente gestito dotato di numerose funzionalità, tra cui ricerca full-text, grafici, integrazioni con i partner e molto altro ancora. Se stai sviluppando per iOS o Android, Atlas Device Sync rende la sincronizzazione mobile un gioco da ragazzi. Puoi anche creare applicazioni web su GraphQL direttamente su MongoDB Atlas.

Introduzione a Java e MongoDB

Assicurati di avere installato Java 8 (o una versione successiva) e che il tuo IDE preferito sia pronto.

La prima cosa da fare è dichiarare una dipendenza sull'ultima versione del driver Java di MongoDB. Le istruzioni su come farlo usando Gradle o Maven, insieme al codice di esempio, sono disponibili qui.

Creazione del primo MongoDB Atlas cluster

Una volta configurate tutte le dipendenze del progetto Java, avrai bisogno di un database.

Puoi creare un account e creare un cluster gratuito su MongoDB Atlas seguendo questa guida. Ti mostrerà anche come inserire dati di esempio.

Connessione al cluster Atlas

Dopo la sezione precedente, dovresti avere un nuovo cluster MongoDB distribuito in Atlas, un nuovo utente e password del database e alcuni set di dati di esempio caricati nel cluster.

Ora è il momento di connettersi a un database utilizzando il driver. Per stabilire una connessione al database, il driver ha bisogno di istruzioni su come connettersi. Queste istruzioni sono chiamate stringa di connessione. Puoi ottenere la stringa di connessione per il cluster e il nome utente creati nel passaggio precedente accedendo al tuo account Atlas, passando alla sezione Database e facendo clic su "Connetti".

Verrà visualizzato un pop-up che ti chiederà di selezionare il driver e la versione. Dopo aver compilato entrambi i menu a discesa, puoi usare la stringa di connessione al database risultante (inizierà con "mongdb+srv://") per connetterti al tuo cluster. Ricorda di sostituire i valori con il tuo nome utente e la tua password!

Puoi usare questa stringa di connessione per eseguire query sul tuo cluster MongoDB dalla tua applicazione. Puoi trovare una serie di istruzioni più approfondite e codice di esempio qui.

Documenti e tabelle

A differenza dei database SQL, MongoDB archivia le informazioni in documenti e tabelle.

"documents"

MongoDB archivia i record di dati come documenti BSON. BSON è una rappresentazione binaria di documenti JSON, sebbene contenga più tipi di dati rispetto a JSON. I documenti sono composti da coppie campo-valore con la seguente struttura:

 

 

I valori associati ai campi possono essere di qualsiasi tipo di dati BSON, inclusi altri documenti, matrici e persino matrici di documenti. I nomi dei campi stessi sono stringhe.

I documenti sono molto più flessibili delle righe standard nei relational database, poiché offrono uno schema dinamico anziché uno forzato (sebbene tu possa eseguire la convalida dello schema con MongoDB se vuoi!).

Raccolte

MongoDB archivia i documenti in tabelle. Una tabella è come una tabella in un relational database. Per maggiori dettagli su come creare una tabella e altre informazioni sulle tabelle, puoi consultare la documentazione qui.

Operazioni CRUD e linguaggio di query MongoDB

Le operazioni CRUD (creazione, lettura, aggiornamento ed eliminazione) sono le quattro operazioni di base che è possibile eseguire con un database. Nel caso di MongoDB, è possibile utilizzare le operazioni CRUD per inserire documenti, scrivere query per trovare documenti corrispondenti, aggiornare i documenti ed eliminarli. Puoi farlo utilizzando MQL, il linguaggio di query di MongoDB. A differenza delle istruzioni SQL, MQL utilizza la stessa sintassi dei documenti, il che lo rende intuitivo e facile da usare anche per query avanzate.

Un tutorial CRUD completo e un codice di esempio per ciascuna delle quattro operazioni utilizzando il driver Java sono disponibili nel MongoDB Developer Center.

Integrazione con altre tecnologie

Probabilmente, il tuo stack tecnologico è molto di più che il semplice IDE e la tua versione preferita di Java. Di seguito sono riportati solo alcuni dei molti modi in cui è possibile utilizzare MongoDB.

Spring Data MongoDB

Spring Data MongoDB è parte dell'umbrella project Spring Data, che mira a fornire un modello di programmazione basato su Spring familiare e coerente per nuovi archivi dati, pur mantenendo le caratteristiche e le funzionalità specifiche dell'archivio. Fornisce l'integrazione con il database MongoDB, un modello POJO-centrico per interagire con le tabelle MongoDB e altro ancora.

Estensione MongoDB per Hibernate ORM

Hibernate è stato creato per mappare il codice Java orientato agli oggetti sui relational database, adeguandosi ai loro vincoli. Ciò ha consentito agli sviluppatori Java di concentrarsi maggiormente sulla scrittura del codice e meno sul processo noioso e spesso soggetto a errori di traduzione dei propri oggetti Java nella persistenza relazionale. L'estensione MongoDB per Hibernate ORM, ora disponibile a livello generale, offre agli sviluppatori Java la libertà e la flessibilità necessarie per creare applicazioni moderne utilizzando il document model di MongoDB e le funzionalità intuitive di Hibernate, tra cui le annotazioni Entity, il supporto per Hibernate Query Language (HQL), le Criteria Query e altro ancora. L'estensione include anche il supporto JOIN (INNER e LEFT OUTER), il blocco ottimistico (optimistic locking), la configurazione automatica di Spring Boot (nessun override manuale richiesto) e una messaggistica di eccezioni e di registrazione migliorata, rendendola pronta per i carichi di lavoro di produzione.

Piattaforme di cloud computing

Quando si tratta di provider di cloud pubblico, ci sono tre provider principali che vengono in mente: Amazon Web Services (AWS), Microsoft Azure e Google Cloud Platform (GCP). MongoDB Atlas supporta tutti e tre i principali provider di servizi cloud. Supporta anche implementazioni multi-cloud e multi-regione. Maggiori informazioni qui.

Automazione dell'infrastruttura

Terraform è uno strumento software open-source di infrastruttura come codice che consente di creare, modificare e migliorare l'infrastruttura in modo sicuro e prevedibile. HashiCorp Terraform MongoDB Atlas Provider è un plugin ufficiale sviluppato da HashiCorp che ti permette di eseguire il provisioning, gestire e controllare le configurazioni di Atlas su qualsiasi provider cloud utilizzando Terraform.

Servizi di monitoraggio

Atlas può inviare dati sulle metriche del tuo progetto alle dashboard di Datadog o alla tua istanza di Prometheus. Puoi anche configurare Atlas per inviare informazioni a Flowdock, Microsoft Teams, OpsGenie, PagerDuty, Slack e altri. Puoi trovare maggiori dettagli al riguardo qui.

Come ottenere aiuto

La parte migliore dell'utilizzo di MongoDB è la vivace comunità Java che include utenti con tutti i livelli di esperienza con il driver Java. Il modo migliore per ricevere supporto per domande generali è utilizzare i Forum della community di MongoDB.

Se riscontri un errore imprevisto, ritieni di aver trovato un bug nel driver Java o hai una richiesta di funzionalità, apri un ticket JIRA sul progetto JAVA. Puoi trovare le istruzioni su come farlo nella documentazione. Le segnalazioni di bug sia per il driver Java sia per Core Server sono pubbliche.

Domande frequenti

Inizia subito con Atlas

Inizia in pochi secondi. I nostri cluster gratuiti sono dotati di 512 MB di spazio di archiviazione, così puoi utilizzare i dati di esempio e iniziare ad acquisire familiarità con la nostra piattaforma.
Prova gratuitaContatta il reparto vendite
INIZIA CON:
  • Oltre 125 regioni in tutto il mondo
  • Set di dati di esempio
  • Autenticazione sempre attiva
  • Crittografia end-to-end
  • Strumenti a riga di comando