在springboot单体项目上使用feign远程调用接口

本文介绍了如何在纯SpringBoot项目中使用Feign进行远程接口调用。首先,需要引入Feign的依赖;然后,创建Feign客户端,并在接口上添加@FeignClient注解,指定服务名和URL;最后,在需要调用的地方注入接口并使用。通过这种方式,可以在SpringBoot应用中便捷地实现远程调用。
摘要由CSDN通过智能技术生成

之前使用feign是在分布式项目上,从来没有在纯springboot项目上单独用过。这次有需求要用突然间还挺蒙的,百度了一圈终于会了。

在Java中远程调用接口,可以使用HttpClient也可以使用feign,我这里就说feign的使用。

先导入feign依赖

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-feign</artifactId>
            <version>1.3.2.RELEASE</version>
        </dependency>

创建feign客户端

接口上打上@FeignClient注解,括号里面两个参数必填

name:在分布式项目中这里需要填写对应微服务的服务名,由于我们是springboot单体项目所以这里可以随便填

url:远程调用的接口路径 我这里是配置在了application.properties文件里,方便修改。或者直接把URL的IP和端口写在这里也行

完整URL例子:http://IP:端口/getVersionListByProject?project=SYA

@Component//交给spring管理
@FeignClient(name = "jira",url = "${versionList.feign.url}")
public interface JiraFeignClient {

    /**
     * 通过项目查询版本信息(参数固定为SYA)
     * @return 返回json字符串
     */
    @GetMapping("/getVersionListByProject?project=SYA")
    String getVersionList();

    /**
     * 通过版本名获取issues信息
     * @param version:版本名称
     * @return 返回json字符串
     */
    @GetMapping("/getIssueInfoByVersion")
    String getIssuesByVersion(@RequestParam("version") String version);

}

在需要的类中注入接口调用方法

@component
public class JiraTimer {
    
    @Autowired
    private JiraFeignClient jiraFeignClient;
    
    
    public void test1() {
        
        String name = "版本名称";
        
        /* 通过接口调用方法获取数据,看具体返回什么数据,使用对应的类型进行接收就行 */
        String versionListStr = jiraFeignClient.getVersionList();
        
       String versionDetailStr = jiraFeignClient.getIssuesByVersion(name);
        
    }
    
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值