企业feign接口应用

feign接口说明:

Feign 是一个声明式、模板化的HTTP客户端,简化了系统发起Http请求。创建它时,只需要创建一个接口,然后加上FeignClient注解,使用它时,就像调用本地方法一样,作为开发者的我们完全感知不到这是在调用远程的方法,也感知不到背后发起了HTTP请求:

feign接口应用场景主要是:

在一个项目中写了接口,在另一个项目中也用到了这个接口,如果原封不动照搬进另一个项目中,会比较麻烦,(实体类,mapper类,mapper.xml文件都需要加进项目中,而且会造成代码冗余),这个时候就用到了feign接口,直接在项目中调用之前写好的接口就行。

应用:在需要调用接口的项目中新建一个feign接口。在接口名上面加@Feign注解
(name 值一般是项目的application.yml配置文件中的application-name 名称转为大写,
configuration 值为配置类,xxx.class,企业一般会自定义配置类,这个配置类是一个拦截器,在拦截器代码中可以修改请求参数,header等,

当feign调用返回HTTP报文时,会触发这个方法,可以用来定制一些处理逻辑等等。

path参数用来定义全局请求路径)

样例:

@FeignClient(name = "APPLICATION-NAME",configuration = FeignClientsConfigurationCustom.class,path =  RestPathPrefixConstant.GLOBAL_PREFIX)
public interface DigitalepIpcMsClient {
    @PostBasisMapping(value = "/xxx")
    List<Card> getCard();


接口下面的方法就是需要远程调用的方法

注意:

在上面这个示例中,feign客户端在FeignClientsConfigurationCustom中的配置将会覆盖FeignClientsConfiguration中的配置。

要注意的是: MyConfiguration不需要使用@Configuration注解。如果加上了,它将全局生效。
如果需要自定义单个Feign配置,Feign的@Configuration 注解的类不能与@ComponentScan 的包重叠,这样会如果包重叠,将会导致所有的Feign Client都会使用该配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值