Forest Forest
首页
  • 当前版本

    • v1.6.x
  • 历史版本

    • v1.5.36
    • v1.5.35
    • v1.5.33
    • v1.5.30 ~ v1.5.32
    • v1.5.0 ~ v1.5.28
  • 插件

    • ForestX
  • 问答

    • 常见问题
    • 更新记录
案例
  • 加入群聊
  • 赞助我们
  • 参与贡献
  • 贡献者们
  • 项目介绍
  • 开发团队
  • 关于作者
  • MaxKey - 业界领先的身份管理和认证产品 (opens new window)
  • Snowy - 国内首个国密前后端分离快速开发平台 (opens new window)
  • Eoapi - 一个开源、可拓展的 API 工具平台 (opens new window)
  • Fast Request - IDEA版Postman,为简化API调试而生 (opens new window)
  • Bean Searcher - 专注高级查询的只读 ORM (opens new window)
  • zyplayer-doc - 可私有化部署的文档与知识库管理平台 (opens new window)
  • frSimple - 中后台脚手架/小程序商城 (opens new window)
  • Gitee (opens new window)
  • Github (opens new window)
  • GitCode (opens new window)
首页
  • 当前版本

    • v1.6.x
  • 历史版本

    • v1.5.36
    • v1.5.35
    • v1.5.33
    • v1.5.30 ~ v1.5.32
    • v1.5.0 ~ v1.5.28
  • 插件

    • ForestX
  • 问答

    • 常见问题
    • 更新记录
案例
  • 加入群聊
  • 赞助我们
  • 参与贡献
  • 贡献者们
  • 项目介绍
  • 开发团队
  • 关于作者
  • MaxKey - 业界领先的身份管理和认证产品 (opens new window)
  • Snowy - 国内首个国密前后端分离快速开发平台 (opens new window)
  • Eoapi - 一个开源、可拓展的 API 工具平台 (opens new window)
  • Fast Request - IDEA版Postman,为简化API调试而生 (opens new window)
  • Bean Searcher - 专注高级查询的只读 ORM (opens new window)
  • zyplayer-doc - 可私有化部署的文档与知识库管理平台 (opens new window)
  • frSimple - 中后台脚手架/小程序商城 (opens new window)
  • Gitee (opens new window)
  • Github (opens new window)
  • GitCode (opens new window)

Forest

声明式与编程式双修,让天下没有难以发送的 HTTP 请求

开始使用 →

🍭 容易上手

10分钟即可完成请求的定义、发送、接收、解析、错误处理、日志打印等过程,此外还有直观的API和详尽的文档

☕ 简单优雅

将繁复的 HTTP 请求细节封装成 Java 接口 + 注解的形式,不必关心请求发送的具体过程

🧩 扩展灵活

能使用自定义拦截器和自定义注解来扩展Forest的能力,即使面对意想不到的场景也能轻松应对

🧱 多种后端

Forest 后端底层支持 OkHttp3 和 HttpClient 框架,助你应对各种场景的不同情况

🏸 多种范式

Forest 支持声明式以及编程式的请求发送范式,并对每种范式都提供了尽可能快捷高效的接口

⚽️ 多种格式

Forest 支持JSON、XML、表单、Protobuf 等多种主流数据格式转换

🍭 容易上手

10分钟即可完成请求的定义、发送、接收、解析、错误处理、日志打印等过程,此外还有直观的API和详尽的文档

☕ 简单优雅

将繁复的 HTTP 请求细节封装成 Java 接口 + 注解的形式,不必关心请求发送的具体过程

🧩 扩展灵活

能使用自定义拦截器和自定义注解来扩展Forest的能力,即使面对意想不到的场景也能轻松应对

🧱 多种后端

Forest 后端底层支持 OkHttp3 和 HttpClient 框架,助你应对各种场景的不同情况

🏸 多种范式

Forest 支持声明式以及编程式的请求发送范式,并对每种范式都提供了尽可能快捷高效的接口

⚽️ 多种格式

Forest 支持JSON、XML、表单、Protobuf 等多种主流数据格式转换



# 特别赞助


MaxKey

业界领先的身份管理和认证产品

Snowy

国内首个国密前后端分离快速开发平台

Postcat

开源 API 管理工具,接口文档、接口测试、Mock..

明道云HAP超级应用平台

不止零代码,融合多元能力,就是能解决很多问题

Fast Request

IDEA版Postman,为简化API调试而生

zyplayer-doc

可私有化部署的文档与知识库管理平台

frsimple

一个纯净的中后台脚手架,无封装,支持springboot2.7.x和3.x双分支版本

JNPF低代码开发平台

技术双引擎系统,无限制业务场景,永久使用权,全源码交付

成为赞助商

期待您的大力支持

- name: MaxKey
  desc: 业界领先的身份管理和认证产品
  avatar: /img/sponsor/max-key.png
  link: https://maxkey.top/
  bgColor: '#282c34' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  textColor: '#ffffff' # 可选,默认var(--textColor)
- name: Snowy
  desc: 国内首个国密前后端分离快速开发平台
  avatar: /img/sponsor/snowy.png
  link: https://xiaonuo.vip/
  bgColor: '#1373CC' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  textColor: '#ffffff' # 可选,默认var(--textColor)
- name: Postcat
  desc: 开源 API 管理工具,接口文档、接口测试、Mock..
  avatar: /img/sponsor/eoapi.png
  link: https://datayi.cn/w/noqbyyr9
  bgColor: '#142765' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  textColor: '#ffffff' # 可选,默认var(--textColor)
- name: 明道云HAP超级应用平台
  desc: 不止零代码,融合多元能力,就是能解决很多问题
  avatar: /img/sponsor/mingdao.png
  link: https://www.mingdao.com?s=utm_80&utm_source=forest&utm_medium=banner&utm_campaign=IT%E7%BD%91%E7%AB%99&utm_content=IT%E8%B5%8B%E8%83%BD%E4%B8%9A%E5%8A%A1
  bgColor: '#2196f3'
  textColor: '#ffffff'
- name: Fast Request
  desc: IDEA版Postman,为简化API调试而生
  avatar: /img/sponsor/fast-request.svg
  link: https://dromara.gitee.io/fast-request/
  bgColor: '#2a2a2a'
  textColor: '#ffffff'
- name: zyplayer-doc
  desc: 可私有化部署的文档与知识库管理平台
  avatar: /img/sponsor/zyplayer-logo.png
  link: https://doc.zyplayer.com/#/integrate/zyplayer-doc?utm=forest
  bgColor: '#ffffff'
  textColor: '#000000'
- name: frsimple
  desc: 一个纯净的中后台脚手架,无封装,支持springboot2.7.x和3.x双分支版本
  avatar: /img/sponsor/frsimple.jpg
  link: https://frsimple.cn/blogs/other/money.html
  bgColor: '#407cfe'
  textColor: '#ffffff'
- name: JNPF低代码开发平台
  desc: 技术双引擎系统,无限制业务场景,永久使用权,全源码交付
  avatar: /img/sponsor/jnpfsoft.png
  link: https://www.jnpfsoft.com/index.html?from=forest
  bgColor: '#ffffff'
  textColor: '#000000'
- name: 成为赞助商
  desc: 期待您的大力支持
  avatar: /img/sponsor/sponsor.svg
  link: /pages/donate/
  bgColor: '#e6e6e6' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  textColor: '#1f2328' # 可选,默认var(--textColor)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54



# 特性

  • 支持 声明式接口,方便与业务代码解耦
  • 支持 编程式接口,方便快速访问请求
  • 支持底层 HTTP 库: OkHttp 3
  • 支持底层 HTTP 库: Httpclient
  • 不依赖中间件
  • 支持 GET、POST 等所有请求方法
  • 约定大于配置
  • 自动 JSON、XML、Protobuf 转换
  • 支持 自定义转换器
  • 多种加签方式
  • 支持 Spring 和 Springboot 集成
  • 支持 上传下载
  • 支持 模板表达式
  • 支持 拦截器
  • 支持 自定义注解
  • 支持 异步请求
request flow



# 正在使用 Forest 的企业

华为
蚂蚁集团
吉利集团
中科院计算所大数据研究院
中国交建
神州通立电梯
雅迪
雅迪
人人都是产品经理
万智维度
壹润
尚融网络科技
华方智联
趣链科技
野兽派花店
聚云位智
新佰人机器人
赢他科技
朝前智能
满意吧
源一科技
欣网视讯
嘉之会科技
星晟工程
百应
嗨宝贝
仟奇
(如果您的企业也使用 Forest,您可以 在此 提交)



# 最新版本

    <!-- Spring Boot3 环境请用 forest-spring-boot3-starter -->
    <!-- Forest Spring Boot 启动包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-spring-boot-starter</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- Forest JAXB 扩展包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jaxb</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <!-- Forest Spring Boot3 启动包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-spring-boot3-starter</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- Forest Jakarta 扩展包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jakarta-xml</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <!-- Forest 核心包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-core</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- Forest Spring 扩展包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-spring</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 版本在 17 以下,就使用 forest-jaxb -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jaxb</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 环境为 17 及以上版本,则使用 forest-jakarta-xml -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jakarta-xml</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <!-- Forest Solon 插件包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-solon-plugin</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 版本在 17 以下,就使用 forest-jaxb -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jaxb</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 环境为 17 及以上版本,则使用 forest-jakarta-xml -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jakarta-xml</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <!-- Forest 核心包 -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-core</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 版本在 17 以下,就使用 forest-jaxb -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jaxb</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    <!-- 若 Java 环境为 17 及以上版本,则使用 forest-jakarta-xml -->
    <dependency>
        <groupId>com.dtflys.forest</groupId>
        <artifactId>forest-jakarta-xml</artifactId>
        <version>1.6.4</version>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    // Make sure to add code blocks to your code group

    所需环境

    JDK版本: 8+

    可集成的 spring boot 版本: 1.x, 2.x, 3.x

    spring boot3 所依赖的 starter 不同,请注意坐标

    也可不依赖 spring boot 和 spring



    # 代码托管



    # 知识星球

    zsxq



    # 开源社区平台



    # dromara 组织项目



    # 友情链接

    王旭阳博客



    Theme by Vdoing | Copyright © 2016-2025 公子骏 | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式