当前位置:   article > 正文

spring-cloud微服务整合openfeign_spring-cloud-starter-openfeign pom

spring-cloud-starter-openfeign pom

spring-cloud整合openfeign

  1. pom文件中引入依赖
		<!-- SpringCloud Openfeign -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
        <!-- LoadBalancer 负载均衡-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-loadbalancer</artifactId>
        </dependency>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  1. 启动类加上 @EnableFeignClients 注解,将 RestTemplate 和 客户端负载均衡结合使用,在启动类中注册Bean
	@Bean
    @LoadBalanced//默认使用轮询方式进行负载均衡
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }
  • 1
  • 2
  • 3
  • 4
  • 5

3.如果说要调用另外一个服务下TestController 中的@GetMapping("/test"),前提是my-gateway这个服务已经注册进euaka或者nacos,则需要加上@FeignClient(“my-gateway”)//my-gateway代表要调用的服务名称

/*

@RestController
public class TestController {

    @Resource
    private TestService testService;
    
    @GetMapping("/test")
    public String test(){
        return "test";
    }
}
*/
@FeignClient("my-gateway")//my-gateway为要调用的服务名称  spring.application.name=my-gateway
public interface MyOpenFeignService {
    @GetMapping(value = "/test")
    public String test();
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4.将MyOpenFeignService注入到本服务的controller,调用方法即可

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;

/**
 * @author ssy
 * @date 2021/12/17 17:50
 */
@RestController
public class MyOpenFeignController {
	//将MyOpenFeignService注入进来
    @Resource
    private MyOpenFeignService myOpenFeignService;

    @GetMapping("/test")
    public String test(){
        return myOpenFeignService.test();
    }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

5.浏览器调用/test接口,看到返回“test”

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号