Spring Data gebruiken met Azure Cosmos DB voor Apache Cassandra

Dit artikel laat zien hoe u een voorbeeldtoepassing maakt die Spring Data gebruikt om informatie op te slaan en op te halen met behulp van Azure Cosmos DB voor Apache Cassandra.

Vereisten

  • Een Git-client.

  • cURL of een vergelijkbaar HTTP-hulpprogramma om de functionaliteit te testen.

Een Azure Cosmos DB-account maken

Met de volgende procedure maakt en configureert u een Azure Cosmos DB-account in Azure Portal.

Een Azure Cosmos DB-account maken in Azure Portal

Notitie

Meer gedetailleerde informatie over het maken van accounts vindt u in de Documentatie van Azure Cosmos DB.

  1. Ga naar de Azure-portal op https://portal.azure.com/ en meld u aan.

  2. Selecteer Een resource maken, ga aan de slag en selecteer vervolgens Azure Cosmos DB.

  3. Selecteer Cassandra in het scherm API-optie selecteren.

    Azure Portal, maak een resource, selecteer API-optie, Cassandra geselecteerd.

  4. Geef de volgende informatie op:

    • Abonnement: geef uw Azure-abonnement op dat u wilt gebruiken.
    • Resourcegroep: geef op of u een nieuwe resourcegroep wilt maken of een bestaande resourcegroep wilt kiezen.
    • Accountnaam: Kies een unieke naam voor uw Azure Cosmos DB-account. Deze naam wordt gebruikt om een volledig gekwalificeerde domeinnaam te maken, zoals wingtiptoyscassandra.documents.azure.com.
    • API: Geef Cassandra op voor deze zelfstudie.
    • Locatie: Geef de dichtstbijzijnde geografische regio voor uw database op.

    Geef uw Azure Cosmos DB-accountinstellingen op.

  5. Wanneer u alle bovenstaande gegevens hebt ingevoerd, klikt u op Controleren en maken.

  6. Als alles er goed uitziet op de beoordelingspagina, klikt u op Maken.

Het implementeren van de database duurt enkele minuten.

Een keyspace toevoegen voor uw Azure Cosmos DB-account

  1. Ga naar de Azure-portal op https://portal.azure.com/ en meld u aan.

  2. Selecteer Alle resources en selecteer vervolgens het Azure Cosmos DB-account dat u hebt gemaakt.

  3. Selecteer Data Explorer, selecteer pijl-omlaag en selecteer Nieuwe keyspace. Voer een unieke id in voor uw Keyspace-id en selecteer VERVOLGENS OK.

    Selecteer nieuwe keyspace.

    Maak een Azure Cosmos DB-keyspace.

De verbindingsinstellingen voor uw Azure Cosmos DB-account ophalen

  1. Ga naar de Azure-portal op https://portal.azure.com/ en meld u aan.

  2. Selecteer Alle resources en selecteer vervolgens het Azure Cosmos DB-account dat u hebt gemaakt.

  3. Selecteer Verbinding maken iontekenreeksen en kopieer de waarden voor de velden Contact Point, Port, Username en Primary Password. U gebruikt deze waarden om uw toepassing later te configureren.

    Haal uw Azure Cosmos DB-verbindingsinstellingen op.

De voorbeeldtoepassing configureren

Met de volgende procedure wordt de testtoepassing geconfigureerd.

  1. Open een opdrachtshell en kloon het voorbeeldproject met een Git-opdracht zoals in het volgende voorbeeld:

    git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
    
  2. Zoek het bestand application.properties in de resourcemap van het voorbeeldproject of maak het bestand als het nog niet bestaat.

  3. Open het bestand application.properties in een tekst editor en voeg de volgende regels in het bestand toe of configureer deze, en vervang de voorbeeldwaarden door de eerder genoemde juiste waarden:

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

    Hierin:

    Parameter Description
    spring.data.cassandra.contact-points Geeft het eerder in dit artikel genoemde Contactpunt op.
    spring.data.cassandra.port Geeft de eerder in dit artikel genoemde Poort op.
    spring.data.cassandra.username Geeft uw eerder in dit artikel genoemde Gebruikersnaam op.
    spring.data.cassandra.password Geeft uw eerder in dit artikel genoemde Primaire wachtwoord op.
  4. Sla het bestand application.properties op en sluit het.

De voorbeeldtoepassing inpakken en testen

Blader naar de map met het pom.xml-bestand om de toepassing te bouwen en te testen.

  1. De voorbeeldtoepassing maken met Maven; bijvoorbeeld:

    mvn clean package
    
  2. Start de voorbeeldtoepassing, bijvoorbeeld:

    java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
    
  3. Maak nieuwe records met behulp van curl vanuit een opdrachtprompt, zoals in de volgende voorbeelden:

    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
    

    Uw toepassing moet waarden retourneren zoals in het volgende voorbeeld:

    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. Haal alle bestaande records op met behulp van curl vanaf een opdrachtprompt, zoals in de volgende voorbeelden:

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

    Uw toepassing moet waarden retourneren zoals de volgende voorbeelden:

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

Samenvatting

In deze zelfstudie hebt u een Java-voorbeeldtoepassing gemaakt die Spring Data gebruikt om informatie op te slaan en op te halen met behulp van Azure Cosmos DB voor Apache Cassandra.

Resources opschonen

Als u de resources die in dit artikel zijn gemaakt niet meer nodig hebt, gebruikt u Azure Portal om deze te verwijderen om onverwachte kosten te voorkomen.

Volgende stappen

Voor meer informatie over Spring en Azure gaat u door naar het documentatiecentrum van Spring op Azure.

Zie ook

Voor meer informatie over het gebruik van Azure met Java raadpleegt u de artikelen Azure voor Java-ontwikkelaars en de Werken met Azure DevOps en Java.