OpenFeign 的@FeignClient注解如何正确使用spel表达式


openFeign 注解@FeignClient("${openFeign.user-cloud}")可以这样使用spel表达式引用配置文件内容,

但是具体引用的是客户端调用的时候配置的内容,而不是服务端,服务端不需要配置,只需要继承feign接口,让方法声明和请求路径一致就可以了。比如:

这里his-center调用user-center,则user-center的feign接口上面该注解@FeignClient("${openFeign.user-cloud}")应该引用his-center中的配置,所以openFeign.user-cloud应该写在his-center中,但是值应该是user-center的注册中心服务名(即spring.application.name的值),而user-center中不需要配置openFeign.user-cloud这个值;如果不使用spel表达式,写死就是这么写:@FeignClient("user-center"),里面的内容就是user-center中的注册中心服务名。

 

使用spel的好处,同一个服务多个feign接口可以通过改变配置文件就可以一起改变,比如本地想调用本地feign测试,就可以把调用的feign服务名改为本地的,这样就不会访问到测试环境的feign服务了,因为测试环境的feign服务还没有更新代码;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM