SpringCloud-Feign第一课-使用示例

Posted accessking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud-Feign第一课-使用示例相关的知识,希望对你有一定的参考价值。

概述

  • Feign 是一个Http客户端框架,可以理解为功能类似并且优于HttpClient框架,其使用方式来说比使用HttpClient更方便,既然是一个Http客户端框架,肯定就可以完成对接口的请求了,那么接下来就用一个示例来展示一下Feign如何使用

    Feign简单的使用示例

    构建一个SpringBoot Web服务端
@RestController
public class HelloWorldController 
    @GetMapping("/test")
    public String test(@RequestParam("p1") String p1,@RequestParam("p2") String p2)
        return "123";
    
  • 关于如何构建一个SpringBoot Web项目就不再具体介绍,请直接参考

    构建一个SpringCloud 客户端
  • 构建一个Spring Boot
  • 在pim中添加Spring Cloud依赖
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
            <version>2.0.2.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>io.github.openfeign</groupId>
            <artifactId>feign-core</artifactId>
            <version>9.7.0</version>
        </dependency>
        <dependency>
            <groupId>io.github.openfeign</groupId>
            <artifactId>feign-slf4j</artifactId>
            <version>9.7.0</version>
        </dependency>
  • 在入口程序中添加@EnableFeignClients 注解
@SpringBootApplication
@EnableFeignClients
public class Demo2Application 
    public static void main(String[] args) 
        SpringApplication.run(DemoApplication.class, args);
    
  • 添加FeignClient客户端
@FeignClient(name="helloWorld", url="http://localhost:8080")
public interface HelloWorldClient 

    @GetMapping("/test2")
    String test(@RequestParam("p1") String p1, @RequestParam("p2") String p2);
  • 进行单元测试
@RunWith(SpringRunner.class)
@SpringBootTest
public class Demo2ApplicationTests 

    @Autowired
    HelloWorldClient helloWorldClient;

    @Test
    public void contextLoads() 
        System.out.println(helloWorldClient.test("123","123"));
    
  • 以上就是整个构建Feign客户端请求的Http接口的示例,是不是用起来比HttpClient方便很多呢,SpringCloud在实际应用中并非如此使用Feign客户端,但是也是基于这样的一个基本原理,SpringCloud在实际应用中的使用方式不着急介绍,在最后我会串起来讲

    参考资料

  • Feign基础入门及特性讲解

以上是关于SpringCloud-Feign第一课-使用示例的主要内容,如果未能解决你的问题,请参考以下文章

进阶第一课 Python内置函数

推荐学java——Spring第一课

推荐学java——Spring第一课

推荐学java——Spring第一课

推荐学java——Spring第一课

SpringCloud-Feign