Spring Cloud Feign 简单入门
2024-08-24 02:44:15
Feign是一个生命是的web service 客户端,使用方式非常简单:接口+注解,spring cloud feign 对feign惊醒了增强使它支持了spring mcv注解。
示例(以下示例结合了Eureka):
引入依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
配置启动类:
@SpringBootApplication
@EnableFeignClients
public class EurekaConsumerApplication { public static void main(String[] args) {
SpringApplication.run(EurekaConsumerApplication.class, args);
} }
配置Feign接口:
@FeignClient(name = "eureka-client-peer1")
public interface UserService { @RequestMapping(value = "/user/getUser",method = RequestMethod.POST)
String getUserInfo(@RequestParam("name") String name); }
配置一个Controoler用户调用:
@RestController
@RequestMapping("/user")
public class UserController { @Autowired
private UserService userService; @RequestMapping(value = "/getUser")
public String getUserInfo(String name){
return userService.getUserInfo(name);
}
}
1、注解@EnableFeignClients 表示当前程序启动时,会进行包扫描,扫描所有带@FeignClient注解的类并进行处理
2、注解@FeignClient作用于目标借口上:
1)name:指定FeignClirnt名称,如果项目使用Ribbon,name属性会作为微服务的名称,用于服务发现
2)url:通常用于调试,可手动指定@FeignClient调用的地址
3)configuration :指定feign的配置类
4)fallback:指定容错的处理类,如果请求出现错误(例如:超时,报错等),可调用指定的容错处理类,该类必须实现@FeignClient接口
5)path 统一FeignClient的前缀
6)fallbackFactory:用来提供fallback类的工厂类,避免重复代码出现
最新文章
- iOS - Phone 电话
- 问题:C++形参默认值为什么一定要放在最后?
- 使用supervisor监控进程
- Effective C++ -----条款22:将成员变量声明为private
- union select
- MVC4 下DropDownList使用方法
- 关闭IE窗口
- 坑爹的vector iterators incompatible错误(VS中属性页-->;C/C++-->;代码生成-->;>;运行库)
- fragement切换动画效果的实现
- 文本处理工具(grep)
- 深度解剖dubbo源码
- Protocol Buffer序列化/反序列化---初体验(java版)
- hyperledger中文文档学习-1-词汇表
- ubuntu “无法获得锁 /var/lib/dpkg/lock -open”
- 1490 ACM 数学
- gdb调试5--工程项目的断点调试
- 【教程】教你解决“Windows 资源保护找到了损坏文件但无法修复其中某些文件”的问题【转载】
- WP8.1学习系列(第二章)——Toast通知
- axis2框架用wsdl文件生成的服务端MessageReceiveInOut文件注意事项
- Vue Cli 中使用 Karma / Chrome 执行样式相关单元测试
热门文章
- 日常-acm-排列
- mongo 4.0以下版本 类型转换
- React 服务端渲染最佳解决方案
- 【C++学习笔记】 链式前向星
- TO_DATS() AS ABAP_DATE
- EasyUI获取正在编辑状态行的索引
- gitlab文件夹的权限不要随便给777
- PyCharm 2018.1 软件汉化
- JZOJ 3509. 【NOIP2013模拟11.5B组】倒霉的小C
- Flask学习笔记:数据库ORM操作MySQL+pymysql/mysql-python+SQLAlchemy/Flask-SQLAlchemy