openfeign服务调用多模块项目加前缀(@RequestMapping(“/path“))需要注意的设置

本文探讨了在微服务中使用Feign客户端时,@RequestMapping注解的使用位置可能引发的问题。当@RequestMapping注解加在接口处,如果服务间的包路径设置不当,会导致启动时报错,因为Feign会生成重复的接口实现。解决方案是检查@EnableFeignClients的basePackages配置,确保不包含自身服务接口的包路径。同时,@FeignClient中的path与接口的@RequestMapping需对应,定义调用路径。总结关键点在于理解Feign的路径配置和避免路径冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、@RequsetMapping加在接口处

在这里插入图片描述

在这个地方设置@RequestMapping如果你的这服务需要去调用别的服务,这个时候就要检查一下@EnableFeignClients(basePackages = “com.a.b”)这个在启动类上的注解扫包的路径,如果你本服务的包叫com.a.b被调用的服务接口包路径也是com.a.b,或者扫包路径包含了你本服务的接口包路径,这个时候启动是会报错的,本服务原本有实现,openfeign也会给你动态生成一个实现。报错的错误意思是你的访问路径重复,例如你两个GetMapping中的值写得一样。
二、@RequsetMapping加在实现类
接口: 在这里插入图片描述
实现类:

在这里插入图片描述
接口和实现类标红的地方需要一致,@FeignClient中的path属性是告诉为了告诉调用者的Feign代理有这一级路径,在服务调用时需要加上,@RequsetMapping是实际访问需要的路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值