由于SpringCloud采用分布式微服务架构,难免在各个子模块下存在模块方法互相调用的情况。比如service-admin服务要调用service-card 服务的方法。
@FeignClient()注解就是为了解决这个问题的。
@FeignClient()注解的源码要求它必须在Interface接口上使用。( FeignClient注解被
@Target(ElementType.TYPE)修饰,表示FeignClient注解的作用目标在接口上)
@RequestLine与其它请求不同,只需要简单写请求方式和路径就能达到请求其它服务的目的。
代码语言:javascript复制@FeignClient(value = "feign-server",configuration = FeignConfig.class) //需要一个配置文件
public interface TestService {
@RequestLine("POST /feign/test") //对应请求方式和路径
String feign(@RequestBody UserDO userDO);
}