Repolode
LianjiaTech

LianjiaTech/retrofit-spring-boot-starter

Um starter do Spring Boot que transforma interfaces HTTP do Retrofit em beans gerenciados pelo Spring, com recursos como retry, logging e circuit breaking.

Estrelas
1,916
Forks
338
Issues abertas
8
Último commit
há 2 meses

O que é?

retrofit-spring-boot-starter permite definir APIs HTTP como interfaces Java simples anotadas com @RetrofitClient e, depois, injetá-las em serviços Spring como qualquer outro bean. Ele aproveita as anotações nativas do Retrofit para requisições, então as conhecidas @GET, @POST, @Query, @Body e outras relacionadas funcionam como no próprio Retrofit.

Além da integração básica, o starter oferece recursos configuráveis, como adaptação automática de respostas, conversores personalizados, timeouts por método, retry de requisições, interceptors, circuit breaking e degradação, decodificadores de erros e métricas do Micrometer. Os clientes podem ser detectados automaticamente ou registrados explicitamente com @RetrofitScan.

O projeto tem como alvo o Spring Boot 3.x e 4.x e requer JDK 17 ou posterior. Projetos com Spring Boot 1.x e 2.x são atendidos pela branch separada 2.x.

Recursos principais

  • 01Defina clientes HTTP como interfaces Java usando as anotações nativas do Retrofit.
  • 02Registro automático de clientes por meio do component scanning do Spring ou de @RetrofitScan.
  • 03Configuração por método de timeout, retry e circuit breaking.
  • 04Conversores personalizados, interceptors e decodificadores de erros.
  • 05Métricas do Micrometer e endpoints do Spring Boot Actuator.
  • 06Suporte a GraalVM Native Image e builds AOT.

Casos de uso

  • Chamar APIs REST de terceiros a partir de um serviço Spring Boot, com retries e timeouts.
  • Criar clientes tipados para microsserviços internos em uma aplicação Spring Boot.
  • Adicionar logging, métricas e circuit breaking a chamadas HTTP de saída sem escrever toda a infraestrutura manualmente.

Início rápido

  1. 1

    Adicione a dependência starter (retrofit-spring-boot-starter 4.2.1) ao pom.xml

  2. 2

    Defina uma interface com as anotações @RetrofitClient e HTTP do Retrofit

  3. 3

    Injete a interface em um serviço Spring com @Autowired e faça a chamada

Antes de usar

  • É necessário usar JDK 17 ou mais recente.
  • Projetos com Spring Boot 1.x e 2.x devem usar a branch 2.x separada do starter.

Em coleções

Tópicos

Perguntas frequentes

O que é retrofit-spring-boot-starter?
Um starter do Spring Boot que transforma interfaces HTTP do Retrofit em beans gerenciados pelo Spring, com recursos como retry, logging e circuit breaking. retrofit-spring-boot-starter permite definir APIs HTTP como interfaces Java simples anotadas com @RetrofitClient e, depois, injetá-las em serviços Spring como qualquer outro bean. Ele aproveita as anotações nativas do Retrofit para requisições, então as conhecidas @GET, @POST, @Query, @Body e outras relacionadas funcionam como no próprio Retrofit.
retrofit-spring-boot-starter é gratuito? Qual é a licença?
retrofit-spring-boot-starter é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
retrofit-spring-boot-starter ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de retrofit-spring-boot-starter foi em 14 de set. de 2026.
Para que posso usar retrofit-spring-boot-starter?
Chamar APIs REST de terceiros a partir de um serviço Spring Boot, com retries e timeouts. Criar clientes tipados para microsserviços internos em uma aplicação Spring Boot. Adicionar logging, métricas e circuit breaking a chamadas HTTP de saída sem escrever toda a infraestrutura manualmente.
Como instalar retrofit-spring-boot-starter?
Adicione a dependência starter (retrofit-spring-boot-starter 4.2.1) ao pom.xml Defina uma interface com as anotações @RetrofitClient e HTTP do Retrofit Injete a interface em um serviço Spring com @Autowired e faça a chamada
Onde consigo retrofit-spring-boot-starter?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/LianjiaTech/retrofit-spring-boot-starter

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados