流世幻羽

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

认识Fegin

Feign是简化Java HTTP客户端开发的工具(java-to-httpclient-binder),它的灵感
来自于Retrofit、JAXRS-2.0和WebSocket。Feign的初衷是降低统一绑定Denominator到
HTTP API的复杂度,不区分是否为restful。

1.添加依赖

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

 

2.需要Eureka

@SpringBootApplication
@EnableEurekaClient //eureka
@EnableDiscoveryClient //
@EnableFeignClients  //相互调用
public class QaApplication {

    public static void main(String[] args) {
        SpringApplication.run(QaApplication.class, args);
    }

    
}

3.接口调用

 //调用其他模块
    @RequestMapping(value = "/label/{labelid}",method = RequestMethod.GET)
    public Result findLableById(@PathVariable String labelid) {
        Result result = labelClient.findById(labelid);
        return result;
    }

 

@FeignClient注解用于指定从哪个服务中调用功能 ,注意 里面的名称与被调用的服务
名保持一致,并且不能包含下划线。
@RequestMapping注解用于对被调用的微服务进行地址映射。注意 @PathVariable注
解一定要指定参数名称,否则出错

@FeignClient("tensquare-base")//服务名
public interface LabelClient {

    @RequestMapping(value = "/label/{id}", method = RequestMethod.GET)
    public Result findById(@PathVariable(value="id") String id) ;

}

 

posted on 2019-07-28 16:36  流世幻羽  阅读(9292)  评论(0编辑  收藏  举报