Conectar um banco de dados do Azure Cosmos DB ao aplicativo no Azure Spring Apps

Observação

Os planos Básico, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de desativação de 3 anos. Recomendamos a transição para Aplicativos de Contêiner do Azure. Para mais informações, confira o anúncio de desativação dos Aplicativos Spring do Azure.

O plano Standard de consumo e dedicado será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para Aplicativos de Contêiner do Azure. Para mais informações, confira Migrar o plano Standard de consumo e dedicado dos Aplicativos Spring do Azure para os Aplicativos de Contêiner do Azure.

Este artigo aplica-se a: ✔️ Java ✔️ C#

Este artigo se aplica ao: ✔️ nível Básico/Standard ✔️ nível Enterprise

Em vez de configurar manualmente seus aplicativos do Spring Boot, você pode conectar automaticamente serviços selecionados do Azure aos seus aplicativos usando os Aplicativos Spring do Azure. Este artigo demonstra como conectar seu aplicativo a um banco de dados do Azure Cosmos DB.

Pré-requisitos

Preparar seu projeto

  1. Adicione uma das seguintes dependências ao arquivo pom.xml do aplicativo. Escolha a dependência apropriada para o tipo de API.

    • Tipo de API: NoSQL

      <dependency>
          <groupId>com.azure.spring</groupId>
          <artifactId>spring-cloud-azure-starter-data-cosmos</artifactId>
      </dependency>
      
    • Tipo de API: MongoDB

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-mongodb</artifactId>
      </dependency>
      
    • Tipo de API: Cassandra

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-cassandra</artifactId>
      </dependency>
      
  2. Atualize o aplicativo atual executando az spring app deploy ou crie uma nova implantação para essa alteração executando az spring app deployment create.

Conectar seu aplicativo ao Azure Cosmos DB

Observação

Por padrão, os Conectores de Serviço são criados no nível do aplicativo. Para substituir as conexões, você pode criar outras conexões novamente nas implantações.

Usar a CLI do Azure

Use a CLI do Azure para configurar seu aplicativo do Spring para se conectar a um Banco de Dados NoSQL do Cosmos usando o comando az spring connection create, conforme mostrado no exemplo a seguir. Substitua as variáveis no exemplo por valores reais.

Observação

A atualização das configurações do banco de dados do Azure Cosmos DB pode levar alguns minutos para ser concluída.

Observação

Se estiver usando o Cosmos Cassandra, use --key_space em vez de --database. Se estiver usando o Cosmos Table, use --table em vez de --database. Para obter mais informações, confira Início Rápido: Criar uma conexão de serviço nos Aplicativos Spring do Azure com a CLI do Azure.

az spring connection create cosmos-sql \
    --resource-group $AZURE_SPRING_APPS_RESOURCE_GROUP \
    --service $AZURE_SPRING_APPS_SERVICE_INSTANCE_NAME \
    --app $APP_NAME \
    --target-resource-group $COSMOSDB_RESOURCE_GROUP \
    --account $COSMOSDB_ACCOUNT_NAME \
    --database $DATABASE_NAME \
    --secret

Observação

Se você estiver usando o Conector de Serviço pela primeira vez, comece executando o comando az provider register --namespace Microsoft.ServiceLinker para registrar o provedor de recursos do Conector de Serviço.

Dica

Execute o comando az spring connection list-support-types --output table para obter uma lista de serviços de destino com suporte e os métodos de autenticação para os Aplicativos Spring do Azure. Se o comando az spring não for reconhecido pelo sistema, verifique se você instalou a extensão necessária executando az extension add --name spring.

Use o Portal do Azure

Como alternativa, use o portal do Azure para configurar essa conexão, concluindo as etapas a seguir. O portal do Azure fornece os mesmos recursos que a CLI do Azure e oferece uma experiência interativa.

  1. Escolha sua instância do Aplicativos Spring do Azure no portal do Azure e selecione Aplicativos no menu de navegação. Escolha o aplicativo que você deseja conectar e selecione Conector de Serviço no menu de navegação.

  2. Selecione Criar.

  3. Na guia Básico, para tipo de serviço, selecione Cosmos DB e escolha uma assinatura. Para o tipo de API, selecione Core (SQL), escolha uma conta do Cosmos DB e um banco de dados. Para o tipo de cliente, selecione Java e, em seguida, selecione Avançar: Autenticação. Se você ainda não criou seu banco de dados, consulte Início Rápido: Criar uma conta do Azure Cosmos DB, um banco de dados, um contêiner e itens do portal do Azure.

  4. Na guia Autenticação, escolha Cadeia de conexão. O Conector de Serviço recupera automaticamente a chave de acesso da sua conta do Cosmos DB. Selecione Avançar: Rede.

  5. Na guia Rede, selecione Configurar regras de firewall para habilitar o acesso ao serviço de destino e, em seguida, selecione Em seguida: Examinar + Criar.

  6. Na guia Examinar + Criar, aguarde a validação ser aprovada e selecione Criar. A criação do registro pode levar alguns minutos para ser concluída.

  7. Depois que a conexão entre os aplicativos Spring e o banco de dados Cosmos DB tiver sido gerada, você poderá vê-la na página Conector de Serviço e selecionar o botão desdobrar para exibir as variáveis de conexão configuradas.

Próximas etapas

Neste artigo, você aprendeu a conectar seu aplicativo nos Aplicativos Spring do Azure a um banco de dados do Azure Cosmos DB. Para saber mais sobre como conectar serviços ao aplicativo, confira Conectar a um cache do Cache do Azure para Redis.