如何将 Spring Data 与 Azure Cosmos DB for Apache Cassandra 配合使用

本文演示如何创建一个示例应用程序,该应用程序使用 Spring Data 通过 Azure Cosmos DB for Apache Cassandra存储和检索信息。

先决条件

  • Git 客户端。

  • cURL 或类似的 HTTP 实用工具来测试功能。

创建 Azure Cosmos DB 帐户

以下过程在 Azure 门户中创建和配置 Azure Cosmos DB 帐户。

使用 Azure 门户创建 Azure Cosmos DB 帐户

注意

可以在 Azure Cosmos DB 文档中阅读有关创建帐户的更多详细信息。

  1. https://portal.azure.com/ 浏览到 Azure 门户并登录。

  2. 选择创建资源,然后开始使用,然后选择 Azure Cosmos DB

  3. 选择 API 选项屏幕上,选择 Cassandra

    Azure 门户,创建资源,选择 API 选项,选择 Cassandra。

  4. 指定以下信息:

    • 订阅:指定要使用的 Azure 订阅。
    • 资源组:指定是创建新的资源组,还是选择现有资源组。
    • 帐户名称:为 Azure Cosmos DB 帐户选择唯一名称;此名称将用于创建完全限定的域名,例如 wingtiptoyscassandra.documents.azure.com
    • API:为本教程指定 Cassandra
    • 位置:指定数据库最近的地理区域。

    指定 Azure Cosmos DB 帐户设置。

  5. 输入上述所有信息后,单击查看 + 创建

  6. 如果审阅页上的所有内容看起来都正确,请单击创建

部署数据库需要几分钟时间。

将密钥空间添加到 Azure Cosmos DB 帐户

  1. https://portal.azure.com/ 浏览到 Azure 门户并登录。

  2. 选择 所有资源,然后选择创建的 Azure Cosmos DB 帐户。

  3. 选择 数据资源管理器,选择向下箭头并选择 “新建密钥空间”。 输入密钥空间 ID 的唯一标识符,然后选择确定

    选择新密钥空间。

    创建 Azure Cosmos DB 密钥空间。

检索 Azure Cosmos DB 帐户的连接设置

  1. https://portal.azure.com/ 浏览到 Azure 门户并登录。

  2. 选择 所有资源,然后选择创建的 Azure Cosmos DB 帐户。

  3. 选择 连接字符串,并复制 联系人点端口用户名主密码 字段的值;稍后将使用这些值来配置应用程序。

    检索 Azure Cosmos DB 连接设置。

配置示例应用程序

以下过程配置测试应用程序。

  1. 打开命令行界面并使用 git 命令克隆示例项目,如以下示例所示:

    git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
    
  2. 在示例项目的 资源 目录中找到 application.properties 文件,或者创建该文件(如果尚不存在)。

  3. 在文本编辑器中打开 application.properties 文件,并在文件中添加或配置以下行,并将示例值替换为前面所述的相应值:

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

    地点:

    参数 描述
    spring.data.cassandra.contact-points 指定本文上文中所述的接触点
    spring.data.cassandra.port 指定了本文前面提到的 端口
    spring.data.cassandra.username 指定本文上文中所述的用户名
    spring.data.cassandra.password 指定本文上文中所述的主要密码
  4. 保存并关闭 application.properties 文件。

打包并测试示例应用程序

浏览到包含 pom.xml 文件的目录,以生成和测试应用程序。

  1. 使用 Maven 生成示例应用程序;例如:

    mvn clean package
    
  2. 启动示例应用程序;例如:

    java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
    
  3. 使用命令提示符使用 curl 创建新记录,如以下示例所示:

    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
    

    应用程序应返回类似于以下示例的值:

    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. 从命令提示符处使用 curl 检索所有现有记录,如以下示例所示:

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

    应用程序应返回类似于以下示例的值:

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

总结

在本教程中,你创建了一个示例 Java 应用程序,该应用程序使用 Spring Data 通过 Azure Cosmos DB for Apache Cassandra 存储和检索信息。

清理资源

不再需要时,请使用 Azure 门户 删除本文中创建的资源,以避免意外费用。

后续步骤

若要了解有关 Spring 和 Azure 的详细信息,请继续阅读 Azure 上的 Spring 文档中心。

另请参阅

有关如何将 Azure 与 Java 配合使用的详细信息,请参阅面向 Java 开发人员的 Azure使用 Azure DevOps 和 Java