Come usare Spring Data con Azure Cosmos DB per Apache Cassandra

Questo articolo illustra la creazione di un'applicazione di esempio che usa Spring Data per archiviare e recuperare informazioni usando Azure Cosmos DB per Apache Cassandra.

Prerequisiti

  • Un client Git.

  • cURL o un'utilità HTTP simile per testare la funzionalità.

Creare un account Azure Cosmos DB

La procedura seguente crea e configura un account Azure Cosmos DB nel portale di Azure.

Creare un account Azure Cosmos DB mediante il portale di Azure

Nota

Per altre informazioni dettagliate sulla creazione di account, vedere la documentazione di Azure Cosmos DB.

  1. Passare al portale di Azure all'indirizzo https://portal.azure.com/ ed eseguire l'accesso.

  2. Selezionare Crea una risorsa, quindi Attività iniziali e quindi Azure Cosmos DB.

  3. Nella schermata Selezionare l'opzione API selezionare Cassandra.

    portale di Azure creare una risorsa, selezionare l'opzione API Cassandra selezionata.

  4. Specifica le e seguenti informazioni:

    • Sottoscrizione: specificare la sottoscrizione di Azure da usare.
    • Gruppo di risorse: specificare se creare un nuovo gruppo di risorse o scegliere un gruppo di risorse esistente.
    • Nome account: scegliere un nome univoco per l'account Azure Cosmos DB. Questo nome verrà usato per creare un nome di dominio completo, ad esempio wingtiptoyscassandra.documents.azure.com.
    • API: specificare Cassandra per questa esercitazione.
    • Località: specificare l'area geografica più vicina per il database.

    Specificare le impostazioni dell'account Azure Cosmos DB.

  5. Dopo aver immesso tutte le informazioni precedenti, fare clic su Rivedi e crea.

  6. Se tutte le informazioni contenute nella pagina visualizzata risultano corrette, fare clic su Crea.

La distribuzione del database richiede alcuni minuti.

Aggiungere un keyspace all'account Azure Cosmos DB

  1. Passare al portale di Azure all'indirizzo https://portal.azure.com/ ed eseguire l'accesso.

  2. Selezionare Tutte le risorse e quindi selezionare l'account Azure Cosmos DB creato.

  3. Selezionare Esplora dati, selezionare la freccia giù infine New Keyspace (Nuovo keyspace). Immettere un identificatore univoco in Keyspace id (ID keyspace) e quindi selezionare OK.

    Selezionare nuovo keyspace.

    Creare un keyspace di Azure Cosmos DB.

Recuperare le impostazioni di connessione per l'account Azure Cosmos DB

  1. Passare al portale di Azure all'indirizzo https://portal.azure.com/ ed eseguire l'accesso.

  2. Selezionare Tutte le risorse e quindi selezionare l'account Azure Cosmos DB creato.

  3. Selezionare Connessione stringhe e copiare i valori per i campi Punto di contatto, Porta, Nome utente e Password primaria. Questi valori verranno usati per configurare l'applicazione in un secondo momento.

    Recuperare le impostazioni di connessione di Azure Cosmos DB.

Configurare l'applicazione di esempio

La procedura seguente configura l'applicazione di test.

  1. Aprire una shell dei comandi e clonare il progetto di esempio con un comando git come quello riportato nell'esempio seguente:

    git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
    
  2. Individuare il file application.properties nella directory resources del progetto di esempio oppure creare il file se non esiste già.

  3. Aprire il file application.properties in un editor di testo e aggiungere o configurare le righe seguenti nel file, sostituendo i valori di esempio con i valori appropriati dei passaggi precedenti:

    spring.data.cassandra.contact-points=wingtiptoyscassandra.cassandra.cosmos.azure.com
    spring.data.cassandra.port=10350
    spring.data.cassandra.username=wingtiptoyscassandra
    spring.data.cassandra.password=********
    

    Dove:

    Parametro Descrizione
    spring.data.cassandra.contact-points Specifica il valore di Punto di contatto copiato in precedenza in questo articolo.
    spring.data.cassandra.port Specifica il valore di Porta copiato in precedenza in questo articolo.
    spring.data.cassandra.username Specifica il valore di Nome utente copiato in precedenza in questo articolo.
    spring.data.cassandra.password Specifica il valore di Password primaria copiato in precedenza in questo articolo.
  4. Salvare e chiudere il file application.properties.

Creare il pacchetto dell'applicazione di esempio e testarla

Passare alla directory contenente il file pom.xml per compilare e testare l'applicazione.

  1. Compilare l'applicazione di esempio con Maven. Ad esempio:

    mvn clean package
    
  2. Avviare l'applicazione di esempio. Ad esempio:

    java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
    
  3. Creare nuovi record usando curl al prompt dei comandi come negli esempi seguenti:

    curl -s -d "{\"name\":\"dog\",\"species\":\"canine\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    
    curl -s -d "{\"name\":\"cat\",\"species\":\"feline\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    

    L'applicazione deve restituire valori simili all'esempio seguente:

    Added Pet{id=60fa8cb0-0423-11e9-9a70-39311962166b, name='dog', species='canine'}.
    
    Added Pet{id=72c1c9e0-0423-11e9-9a70-39311962166b, name='cat', species='feline'}.
    
  4. Recuperare tutti i record esistenti usando curl al prompt dei comandi come negli esempi seguenti:

    curl -s http://localhost:8080/pets
    

    L'applicazione deve restituire valori simili agli esempi seguenti:

    [{"id":"60fa8cb0-0423-11e9-9a70-39311962166b","name":"dog","species":"canine"},{"id":"72c1c9e0-0423-11e9-9a70-39311962166b","name":"cat","species":"feline"}]
    

Riepilogo

In questa esercitazione è stata creata un'applicazione Java di esempio che usa Spring Data per archiviare e recuperare informazioni usando Azure Cosmos DB per Apache Cassandra.

Pulire le risorse

Quando le risorse create in questo articolo non sono più necessarie, usare il portale di Azure per eliminarle in modo da evitare addebiti imprevisti.

Passaggi successivi

Per altre informazioni su Spring e Azure, passare al centro di documentazione di Spring in Azure.

Vedi anche

Per altre informazioni sull'uso di Azure con Java, vedere Azure per sviluppatori Java e la documentazione relativa all'uso di Azure DevOps e Java.