springboot+feign客户端接口

在分布式项目中一个项目会拆分成许多应用,每个应用启动时像注册中心 注册一个名字例如 a,方便他人用这个名字a 调用a应用的接口

 feign客户端的作用就是通过其他应用注册的名字 去调用其他应用的接口

例如

  1 启动订单系统-----注册名字为member

   订单系统中有个接口

    @RequestMapping("/getMember")
    public String getMember() {
        return "this is client1";
    }

2 启动会员系统----会员系统的/getOrder 方法调用订单系统的/getMember 接口

2.1

添加依赖

    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

2.2

编写feign客户端(就是写一个接口文件)

@FeignClient(name = "member")          //指定被调用应用的名字(启动应用时像注册中心注册的名字)
public interface MemberApifeign {

    @RequestMapping("/getMember")  //  把member项目中被调用的接口摘抄过来
public String getMember();
}

2.3 编写controller层 

       @Autowired
        private MemberApifeign memberApifeign;//把2.2编写的接口注入进来
       @RequestMapping("/getorder")
        public String getOrder() {
      
        String result =memberApifeign.getMember()  ;//调用2.2 中编写的接口
    
        return result;
    }

2.4 启动项目

在启动类上增加注解

@EnableFeignClients

猜你喜欢

转载自www.cnblogs.com/hhxylm/p/11267064.html