SpringCloud之整合Feign
Posted zengnansheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud之整合Feign相关的知识,希望对你有一定的参考价值。
假设提供者有如下服务接口方法
@RestController @RequestMapping("/person") public class PersonController { @RequestMapping(value = "/get/{id}", method = RequestMethod.GET) public Person get(@PathVariable Integer id) { Person p = new Person(); p.setId(id); p.setName("name" + id); return p; } }
服务调用者端 pom.xml加入依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-feign</artifactId> </dependency>
在服务调用者端启动类开启feign
@SpringBootApplication @EnableEurekaClient @EnableFeignClients public class Application { public static void main(String[] args) { new SpringApplicationBuilder(Application.class).web(true).run(args); } }
在服务调用者端编写一个PersonClient.java
//声明调用的服务名称 @FeignClient("my-provider") public interface PersonClient { @RequestMapping(method = RequestMethod.GET, value = "/person/get/{personId}") Person getPerson(@PathVariable("personId") Integer id); }
在服务调用者端增加一个测试TestController调用提供者
@Autowired private PersonClient personClient; @GetMapping("/personGetFeignTest") @ResponseBody public Person personGetFeignTest() { return personClient.getPerson(100); }
启动注册中心 、提供者、调用者
访问调用者的personGetFeignTest url 测试是否可以成功调用提供者服务
以上是关于SpringCloud之整合Feign的主要内容,如果未能解决你的问题,请参考以下文章
#yyds干货盘点# springcloud整合feign实现服务负载均衡,断路器
SpringCloud + Zookeeper + Feign整合及Feign原理