当前位置: 首页 > article >正文

使用Fign进行客户端远程调用和SpringFormEncoder的使用

1、引入依赖

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

2、启动类加上注解

@EnableFeignClients
@SpringBootApplication
public class FeignTestApplication {

	public static void main(String[] args) {
		SpringApplication.run(FeignTestApplication .class, args);
	}

}

3、新增接口暴露的接口

@FeignClient(value = "feign2",path="/feignService",configuration=MultipartSupportConfig.class)
public interface FeignTestService {

 @PostMapping(value = "/getUser", consumes = APPILICATION_JSON_UTF8_VALUE)
    List<UserInfor> getUserList(@Requesbody  UserInvo inVo);

//用于修改spring默认的encoder配置
    @Configuration
    class MultipartSupportConfig{
        @Bean
        public SpringFormEncoder feignFormEncoder(ObjectFactory<HttpMessageConverts> convert ){
            return new SpringFormEncoder(convert );
        }
}

先配置生成了SpringFormEncoder的bean对象,然后在@FeignClient注解中配置configuration值来修改默认Encoder。
这里使用的并不是spring标准的encoder配置, 

4、使用@AutoWired进行注入,调用

@AutoWired
private FeignTestService feignTestService;

@PostMapping("/getUsers")
@ApiOperation("查询用户列表")
public List<UserInfor> getUserList(UserInVo inVo){

return feignTestService.getUserList(inVo);
}

5.RequestMapping 中produces 和 consumes

consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;


http://www.kler.cn/a/292193.html

相关文章:

  • 每天五分钟机器学习:支持向量机算法数学基础之核函数
  • 【机器学习】机器学习中用到的高等数学知识-1.线性代数 (Linear Algebra)
  • 二五、pxe自动装机
  • FlinkSql读取kafka数据流的方法(scala)
  • 前端怎么获取视口大小
  • 二分搜索的三种方法
  • 2024霸王餐小程序cps,h5公众号小程序开源版系统搭建开发,外卖霸王餐小程序系统源码
  • 学习笔记八:基于Jenkins+k8s+Git+DockerHub等技术链构建企业级DevOps容器云平台
  • Android Manifest 权限描述大全对照表
  • ubuntu22.04搭建elasticsearch+kibana环境
  • Copilot+ PC 借助新的 AMD 和 Intel 芯片扩大可用性
  • python pickle 模块用于保存python内存数据(包括实例对象、字典、列表等所有python中的数据)
  • 【机器学习】决策树与随机森林:模型对比与应用案例分析
  • Python中Excel文件的批量合并和拆分
  • 十、创建卡牌数据类
  • 加密与解密-ida的下载及详细安装过程(附有下载文件)
  • 纹理视图和模型视图画的不同步?
  • jQuery入门(七)jQuery实现按钮分页
  • Ubuntu22.04安装colmap
  • OpenCV:Python计算机视觉库详解
  • Guitar Pro 8.2.1 Build 32+Soundbanks Win/Mac音色库 开心激活版 音乐软件Guitar Pro 8中文破解版
  • 网络安全风险评估技术原理与应用
  • [项目][CMP][SizeAlignMap类设计]详细讲解
  • NLP从零开始------18.文本中阶处理之序列到序列模型(3)
  • maya无法导出fbx
  • JVM为什么要多一步翻译成class文件的理由之一