SpringCloud Feign的使用代码实例

网友投稿 558 2023-06-19

SpringCloud Feign的使用代码实例

SpringCloud Feign的使用代码实例

1.官方文档

https://cloud.spring.io/spring-cloud-static/spring-cloud-openfeign/2.2.2.RELEASE/reference/html/

2.添加依赖

org.springframework.boot

spring-boot-starter-web


org.springframework.cloud

spring-cloud-starter-netflix-eureka-client


org.springframework.cloud

spring-cloud-starter-openfeign


3.添加启动类注解

import org.mybatis.spring.annotation.MapperScan;

import org.springframework.boot.SpringApplication;

import org.springframehttp://work.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.openfeign.EnableFeignClients;

@SpringBootApplication

//@MapperScan("cn.ytheng.order_service")

@EnableFeignClients

public class OrderServiceApplication {

public static void main(String[] args) {

SpringApplication.run(OrderServiceApplication.class, args);

}

}

4.添加Feign接口

import org.springframework.cloud.openfeign.FeignClient;

import org.springframework.web.bind.anhttp://notation.GetMapping;

import org.springframework.web.bind.annotation.RequestParam;

/**

*

* 商品服务客户端

* product-service: 调用服务名称,即spring.application.name

*

*/

@FeignClient(name = "product-service")

public interface ProductClient {

@GetMapping("/api/v1/product/find")

String getById(@RequestParam("id") int id);

}

5.添加Controller

import cn.theng.order_service.service.ProductClient;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.anhttp://notation.PostMapping;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.RestController;

@RestController

@RequestMapping("/api/v1/order")

public class ProductOrderController {

@Autowired

private ProductClient productClient;

@PostMahttp://pping("/test2")

public Object test2(@RequestParam("product_id") int productId) {

String product = productClient.getById(productId);

return "success";

}

}

6.添加application.yml配置

server:

port: 8781

eureka:

client:

serviceUrl:

defaultZone: http://localhost:8761/eureka/

spring:

application:

name: order-service

#设置调用服务超时时间

#product-service为服务名称,也可以设置为默认值default

feign:

client:

config:

product-service:

connectTimeout: 5000

readTimeout: 11000


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot异步任务使用方法详解
下一篇:使用idea搭建一个spring mvc项目的图文教程
相关文章

 发表评论

暂时没有评论,来抢沙发吧~