千家信息网

Spring Cloud微服务之Feign怎么用

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,小编给大家分享一下Spring Cloud微服务之Feign怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Feign
千家信息网最后更新 2025年12月03日Spring Cloud微服务之Feign怎么用

小编给大家分享一下Spring Cloud微服务之Feign怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Feign是一个声明式的http客服端,目标是降低Http API的复杂性.可以用它来处理微服务间的调用.

01

-

接口模块(demo-account)

1.AccountController新增接口

@GetMapping("/{id}")public ResponseEntity> getById(@PathVariable("id") final long id) {  final Account account = service.getById(id);  log.info("getById:[{}]", account);  return Rs.ok(account);}

02

-

Feign模块(demo-feign)

1. 新建模块demo-feign,pom.xml添加依赖

    org.springframework.cloud    spring-cloud-starter-openfeign

2. 新建AccountService

@FeignClient(name = "DEMO-ACCOUNT")public interface AccountService {  @GetMapping("/demo-account/account/{id}")  ResponseEntity> getById(@PathVariable("id") final long id);}
  1. 上面的getById方法可以直接复制对应controller代码,只保留用户自定义参数即可,注意补全请求路径.

  2. @FeignClient的name为被调用服务注册到注册中心的名称,即eureka.instance.appname,通常就是spring.application.name的值.

  3. 调用模块(demo-feign)controller的请求方式要与被调用模块(demo-account)保持一致.

3. 新建controller/AccountController

@Slf4j@RestController@RequestMapping("/account")public class AccountController {  @Resource  private AccountService service;
@GetMapping("/get-by-id") @ApiOperation("通过id获取账户详情") public ResponseEntity> getById() { final ResponseEntity> response = service.getById(1L); final Account account = Rs.requireNonNull(response, ResCode.ACCOUNT_FAIL_GET_BY_ID); return Rs.ok(account); }}

4. 添加启动类 FeignApplication

@EnableFeignClients(basePackages = "io.github.ramerf.feign.service")@EnableDiscoveryClient@SpringBootApplication(scanBasePackages = {"io.github.ramerf.wind", "io.github.ramerf.feign"})public class FeignApplication {  public static void main(String[] args) {    SpringApplication.run(FeignApplication.class, args);  }}

@EnableFeignClients的basePackages属性,指定feign接口定义所在包.

03

-

启动模块测试

启动demo-eureka,demo-gateway,demo-account,demo-feign模块.

访问: http://localhost:3000/demo-feign/account/get-by-id

以上是"Spring Cloud微服务之Feign怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

模块 服务 接口 篇文章 内容 复杂 一致 不怎么 代码 参数 名称 复杂性 大部分 就是 属性 所在 方式 方法 更多 用户 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 超市赠品怎么入数据库 cs进游戏无法选择服务器 服务器主板内存顺序 如何设置sql数据库的登陆密码 数据库实例是什么 北京标准软件开发发展现状 广告灯箱软件开发步骤 自荐书大专计算机网络技术 服务器主机怎么固定 新兴软件开发有限公司在线咨询 客户订购登记管理系统数据库 无纸化会议管理服务器多少钱 吃鸡服务器连接超时8.1.6 ni无法连接到许可证服务器 搞软件开发的 ssm 数据库连接池 hql最大一条数据库 手机如何给网络安全设置密码 普通服务器可以做直播服务器吗 学校网络安全培训计划 石家庄有做软件开发的吗 安徽先进软件开发特征 怎么修改t3数据库 元气骑士连机房和服务器 怎么看自己电脑的服务器的用户 网络安全肉鸡是什么意思 佳越飞网络技术有限公司 智能服务号查询数据库 网络技术公司秉承 高清车牌识别系统数据库如何安装
0