🎯 Springboot3环境使用
在 Forest 依赖加入好,并配置好之后,就可以构建 HTTP 请求的接口了
如还没有添加好依赖或配置好,请参见《Springboot环境安装》和《Springboot环境配置》
在 Forest 中,所有的 HTTP 请求信息都要绑定到某一个接口的方法上,不需要编写具体的代码去发送请求。请求发送方通过调用事先定义好 HTTP 请求信息的接口方法,自动去执行 HTTP 发送请求的过程,其具体发送请求信息就是该方法对应绑定的 HTTP 请求信息
# Hello World
创建一个interface,比如命名为MyClient,并创建一个接口方法名为helloForest,用@Get注解修饰之。
public interface MyClient {
    @Get("http://localhost:8080/hello")
    String helloForest();
}
 1
2
3
4
5
6
2
3
4
5
6
通过@Get注解,将上面的MyClient接口中的helloForest()方法绑定了一个 HTTP 请求,
其 URL 为http://localhost:8080/hello
,并默认使用GET方式,且将请求响应的数据以String的方式返回给调用者。
# 扫描接口
友情提示
1.5.1以后版本可以跳过此步,不需要 @ForestScan 注解来指定扫描的包范围
若您已有定义好的 Forest 请求接口(比如名为 com.yoursite.client.MyClient),那就可以开始愉快使用它了。
只要在Springboot的配置类或者启动类上加上@ForestScan注解,并在basePackages属性里填上远程接口的所在的包名
@SpringBootApplication
@Configuration
@ForestScan(basePackages = "com.yoursite.client")
public class MyApp {
 ...
}
 1
2
3
4
5
6
2
3
4
5
6
Forest 会扫描@ForestScan注解中basePackages属性指定的包下面所有的接口,然后会将符合条件的接口进行动态代理并注入到 Spring 的上下文中。
# 发送请求
然后便能在其他代码中从 Spring 上下文注入接口实例,然后如调用普通接口那样调用即可
@Component
public class MyService {
    
    // 注入自定义的 Forest 接口实例
    @Resource
    private MyClient myClient;
    public void testClient() {
        // 调用自定义的 Forest 接口方法
        // 等价于发送 HTTP 请求,请求地址和参数即为 helloForest 方法上注解所标识的内容
        String result = myClient.helloForest();
        // result 即为 HTTP 请求响应后返回的字符串类型数据
        System.out.println(result);
    }
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
帮助我们改善此文档  (opens new window)
  上次更新: 2024/12/26, 12:59:11