RestTemplate和Feign的区别

1.远程调用方法(RestTemplate和Feign)

RestTemplate和Feign的区别

1.RestTemplate简单的远程调用原型

1.注册一个RestTemplate实例到Spring容器

RestTemplate和Feign的区别

2.拼接转发到user-service的路径,并通过restTemplate方法发起调用,并获得user-service执行结果。

RestTemplate和Feign的区别

image.png

2.Feign远程调用

1.导入依赖
在order-service服务的pom文件中引入feign的依赖:


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

2.添加注解

RestTemplate和Feign的区别

3.编写Feign的客户端

不写属性的话,默认表示name值,这个案例,需要url,所以写了以下两个属性:

属性name:指定FeignClient的名称,如果项目使用了Ribbon,name属性会作为微服务的名称,用于服务发现。本案例用于简单的远程调用,所有name没太大意义,只是为了不报错而已。

属性url:手动指定@FeignClient调用的地址。

然后接口方法里面,就是消费者order-service调用提供者user-service的方法。这里是基于SpringMVC实现的,使用requestMapping发送HTTP请求并获得对应的响应值。

RestTemplate和Feign的区别

4.在orderservice注入feign客户端,通过FeignClient发送请求,获得响应结果

RestTemplate和Feign的区别

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章