Repolode
LianjiaTech

LianjiaTech/retrofit-spring-boot-starter

将 Retrofit 接口深度整合进 Spring Boot 的 starter,并提供重试、日志、熔断等增强功能。

Star
1,916
Fork
338
未关闭 Issue
8
最近提交
2个月前

这是什么?

retrofit-spring-boot-starter 让开发者用带 @RetrofitClient 注解的 Java 接口定义 HTTP 调用,并像普通 Bean 一样注入到 Spring 服务中。请求相关注解沿用 Retrofit 原生的 @GET、@POST、@Query、@Body 等,迁移成本低。

在基础集成之上,该组件提供多项可配置的增强功能,包括响应结果自动适配、自定义数据转换器、方法级超时、请求重试、拦截器、熔断降级、错误解码器以及基于 Micrometer 的指标监控。接口可通过 Spring 自动扫描注册,也可用 @RetrofitScan 手动指定扫描路径。

项目适用于 Spring Boot 3.x 和 4.x,需要 JDK 17 及以上版本。Spring Boot 1.x 和 2.x 项目请使用对应的 2.x 分支。

核心功能

  • 01使用 Retrofit 原生注解以 Java 接口定义 HTTP 客户端。
  • 02通过 Spring 扫描或 @RetrofitScan 自动注册客户端。
  • 03支持方法级超时、请求重试与熔断降级配置。
  • 04支持自定义数据转换器、拦截器和错误解码器。
  • 05提供 Micrometer 指标监控和 Actuator 端点。
  • 06支持 GraalVM Native Image 与 AOT 构建。

适用场景

  • 在 Spring Boot 服务中调用第三方 REST 接口,并配置重试与超时。
  • 在 Spring Boot 应用内构建类型安全的微服务内部调用客户端。
  • 为对外 HTTP 调用添加日志、指标和熔断,而无需手写样板代码。

快速上手

  1. 1

    在 pom.xml 中添加 retrofit-spring-boot-starter 4.2.1 依赖

  2. 2

    定义一个使用 @RetrofitClient 注解并带有 Retrofit HTTP 注解的接口

  3. 3

    通过 @Autowired 将该接口注入 Spring 服务并调用

使用前须知

  • 需要 JDK 17 或更高版本。
  • Spring Boot 1.x 和 2.x 项目需要使用本组件的 2.x 分支。

收录于专题

标签

常见问题

retrofit-spring-boot-starter 是什么?
将 Retrofit 接口深度整合进 Spring Boot 的 starter,并提供重试、日志、熔断等增强功能。 retrofit-spring-boot-starter 让开发者用带 @RetrofitClient 注解的 Java 接口定义 HTTP 调用,并像普通 Bean 一样注入到 Spring 服务中。请求相关注解沿用 Retrofit 原生的 @GET、@POST、@Query、@Body 等,迁移成本低。
retrofit-spring-boot-starter 可以免费使用吗?用的什么许可证?
retrofit-spring-boot-starter 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
retrofit-spring-boot-starter 还在维护吗?
半年内有更新。retrofit-spring-boot-starter 最近一次提交是在 2026年9月14日。
retrofit-spring-boot-starter 适合用来做什么?
在 Spring Boot 服务中调用第三方 REST 接口,并配置重试与超时。 在 Spring Boot 应用内构建类型安全的微服务内部调用客户端。 为对外 HTTP 调用添加日志、指标和熔断,而无需手写样板代码。
retrofit-spring-boot-starter 怎么安装和运行?
在 pom.xml 中添加 retrofit-spring-boot-starter 4.2.1 依赖 定义一个使用 @RetrofitClient 注解并带有 Retrofit HTTP 注解的接口 通过 @Autowired 将该接口注入 Spring 服务并调用
在哪里获取 retrofit-spring-boot-starter?
源代码和安装说明在 GitHub 上:https://github.com/LianjiaTech/retrofit-spring-boot-starter

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目