Configurar um aplicativo Inicializador do Spring Boot para usar o Redis na nuvem com o Cache Redis do Azure
Este artigo ensina a criar um cache Redis na nuvem usando o portal do Azure, depois usar o Spring Initializr para criar um aplicativo personalizado e, então, criar um aplicativo Web de Java que armazena e recupera os dados usando o cache Redis.
Prerequisites
Os seguintes pré-requisitos são obrigatórios para você concluir as etapas neste artigo:
- Uma assinatura do Azure; se ainda não tiver uma assinatura do Azure, você poderá ativar o benefício de assinante do MSDN ou inscrever-se para uma conta gratuita do Azure.
- Um JDK (Java Development Kit) com suporte. Para obter mais informações sobre os JDKs disponíveis para uso durante o desenvolvimento no Azure, confira Suporte a Java no Azure e no Azure Stack.
- Apache Maven versão 3.0 ou posterior.
Criar um aplicativo personalizado usando o Spring Initializr
Navegue até https://start.spring.io/.
Especifique que você deseja gerar um projeto Maven com Java, selecione a versão do Java 8 e insira os nomes de Grupo e Artefato para o seu aplicativo.
Adicione dependências para a seção do Spring Web e marque a caixa Web. Em seguida, role para baixo até a seção NoSQL e marque a caixa Redis Reativo do Spring Data.
Role até a parte inferior da página e clique no botão Gerar Projeto.
Observação
O Spring Initializr usará os nomes de Grupo e Artefato para criar o nome do pacote, por exemplo: com.contoso.myazuredemo.
Depois de ter extraído os arquivos no sistema local, seu aplicativo Spring Boot personalizado estará pronto para edição.
Criar um cache Redis no Azure
Navegue até o Portal do Azure em https://portal.azure.com/ e clique em +Novo.
Clique em Banco de Dadose, em seguida, clique em Cache Redis.
Na página Novo Cache Redis, especifique as seguintes informações:
- Insira o nome de DNS para seu cache.
- Especifique sua Assinatura, o Grupo de recursos, a Localização e o Tipo de cache.
Observação
Você pode usar o SSL com caches Redis, mas você precisa usar um cliente Redis diferente, como o Jedis. Para obter mais informações, consulte Como usar o Cache Redis do Azure com Java.
Após especificar essas opções, selecione a guia Avançado.
Marque a caixa de seleção ao lado de Porta não TLS e selecione Examinar +criar, examine as especificações e escolha Criar.
Depois que o cache for concluído, você o verá listado no Painel do Azure, bem como nas páginas Todos os Recursos e Caches Redis. Você pode clicar no seu cache em qualquer um desses locais para abrir a página de propriedades do cache.
Quando a página que contém a lista de propriedades do cache for exibida, clique em Chaves de acesso e copie as chaves de acesso para o seu cache.
Configurar o Spring Boot personalizado para usar o Cache Redis
Localize o arquivo application.properties no diretório recursos do seu aplicativo, ou crie o arquivo se ele ainda não existe.
Abra o arquivo application.properties em um editor de texto e adicione as seguintes linhas ao arquivo, então substitua os valores de exemplo pelas propriedades adequadas do seu cache:
# Specify the DNS URI of your Redis cache. spring.redis.host=myspringbootcache.redis.cache.windows.net # Specify the port for your Redis cache. spring.redis.port=6379 # Specify the access key for your Redis cache. spring.redis.password=<your-redis-access-key>
Observação
Se você estivesse usando outro cliente Redis, como Jedis, que habilita o SSL, seria necessário especificar que você deseja usar o SSL em seu arquivo application.properties e usar a porta 6380. Por exemplo:
# Specify the DNS URI of your Redis cache. spring.redis.host=myspringbootcache.redis.cache.windows.net # Specify the access key for your Redis cache. spring.redis.password=<your-redis-access-key> # Specify that you want to use SSL. spring.redis.ssl=true # Specify the SSL port for your Redis cache. spring.redis.port=6380
Para obter mais informações, consulte Como usar o Cache Redis do Azure com Java.
Salve e feche o arquivo application.properties.
Crie uma pasta chamada controlador sob a pasta de origem para o seu pacote; por exemplo:
C:\SpringBoot\myazuredemo\src\main\java\com\contoso\myazuredemo\controller
-ou-
/users/example/home/myazuredemo/src/main/java/com/contoso/myazuredemo/controller
Crie um novo arquivo denominado HelloController.java na pasta Controlador. Abra o arquivo em um editor de texto e adicione o seguinte código a ele:
package com.contoso.myazuredemo; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.ValueOperations; @RestController public class HelloController { @Autowired private StringRedisTemplate template; @RequestMapping("/") // Define the Hello World controller. public String hello() { ValueOperations<String, String> ops = this.template.opsForValue(); // Add a Hello World string to your cache. String key = "greeting"; if (!this.template.hasKey(key)) { ops.set(key, "Hello World!"); } // Return the string from your cache. return ops.get(key); } }
Onde você precisará substituir
com.contoso.myazuredemo
pelo nome do pacote para o seu projeto.Salve e feche o arquivo HelloController.java.
Crie seu aplicativo Spring Boot com Maven e execute-o; por exemplo:
mvn clean package mvn spring-boot:run
Teste o aplicativo Web navegando até
http://localhost:8080
com um navegador da Web ou use a sintaxe semelhante ao seguinte exemplo, se você tiver o curl disponível:curl http://localhost:8080
Você deve ver a mensagem "Olá, Mundo!" do controlador de exemplo exibida, que está sendo recuperada dinamicamente do cache Redis.
Próximas etapas
Para saber mais sobre o Spring e o Azure, continue no Spring no Centro de Documentação do Azure.
Recursos adicionais
Para obter mais informações sobre como usar aplicativos Spring Boot no Azure, confira os seguintes artigos:
Implantar um aplicativo do Spring Boot no Serviço de Aplicativo do Azure no Linux
Executando um Aplicativo Spring Boot em um Cluster Kubernetes no Serviço de Contêiner do Azure
Para obter mais informações sobre como usar o Azure com Java, confira Azure para Desenvolvedores Java e Como trabalhar com o Java e o Azure DevOps.
Para obter mais informações sobre como começar a usar o Cache Redis com Java no Azure, consulte Como usar o Cache Redis do Azure com Java.
O Spring Framework é uma solução de software livre que ajuda os desenvolvedores Java criar aplicativos de nível empresarial. Um dos projetos mais populares que é criado com base nessa plataforma é o Spring Boot, que fornece uma abordagem simplificada para a criação de aplicativos Java autônomos. Para ajudar os desenvolvedores a começarem a usar o Spring Boot, vários exemplos de pacotes do Spring Boot estão disponíveis em https://github.com/spring-guides/. Além de escolher na lista de projetos básicos do Spring Boot, o Spring Initializr ajuda os desenvolvedores a começarem a criar aplicativos personalizados do Spring Boot.