轻量级前端框架助力开发者提升项目效率与性能
558
2023-06-19
SpringCloud Feign的使用代码实例
1.官方文档
https://cloud.spring.io/spring-cloud-static/spring-cloud-openfeign/2.2.2.RELEASE/reference/html/
2.添加依赖
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~