前言

在使用SpringCloud的feign组件过程中, 我们想传递一个文件到服务提供者. 但是我们只有byte[], 这是就需要手动创建MultipartFile

实现接口MultipartFile

import java.io.ByteArrayInputStream;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import org.springframework.web.multipart.MultipartFile;

public class GYMultipartFile implements MultipartFile{

private String contentType;

private String originalFilename;

private String name;

private byte[] imgContent;

public GYMultipartFile(String name, String originalFilename, String contentType, byte[] imgContent){

this.imgContent = imgContent;

this.name = name;

this.originalFilename = originalFilename;

this.contentType = contentType;

}

@Override

public String getName() {

return name;

}

@Override

public String getOriginalFilename(){

return originalFilename;

}

@Override

public String getContentType(){

return contentType;

}

@Override

public boolean isEmpty() {

return imgContent == null || imgContent.length == 0;

}

@Override

public long getSize() {

return imgContent.length;

}

@Override

public byte[] getBytes() throws IOException {

return imgContent;

}

@Override

public InputStream getInputStream() throws IOException {

return new ByteArrayInputStream(imgContent);

}

@Override

@SuppressWarnings("resource")

public void transferTo(File dest) throws IOException, IllegalStateException {

new FileOutputStream(dest).write(imgContent);

}

}

注意事项

上面的name必须填写正确, name表示这个文件在表单中的名字

feign传递数组_feign中传递自定义MultipartFile相关推荐

  1. jquery ajax json传递数组,jQuery ajax 传递JSON数组到Spring Controller

    jQuery ajax传递单个JSON对象到后台很容易,这里记录的是传递多个JSON对象组成的JSON数组到java 后台,并说明java如何解析JSON数组. 1.js代码 var relation ...

  2. php ajax传递数组,ajax怎样传递数组到后台

    这次给大家带来ajax怎样传递数组到后台,ajax传递数组到后台的注意事项有哪些,下面就是实战案例,一起来看一下. 前言 我们在使用ajax异步的提交多选框得到需要操作的对象的id,这时我们可以把每一 ...

  3. post postman 传递数组对象_okhttp传递数组参数

    采用okhttp+rxjava+retrofit向后台传递字符串数组参数,格式如下 { "list": ["xxx","yyy"]//val ...

  4. ajax传递数组.net,ajax传递数组问题

    前端:var sgIds= new Array(); $checkGoods.each(function(){ var sgId=$(this).attr("data-sgId") ...

  5. Go 学习笔记(10)— 数组定义、数组声明、数组初始化、访问数组、数组相等、向函数传递数组

    1. 数组定义 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 2. 声明数组 Go 语言数组声明需要指定元素类型及元素个数,语 ...

  6. C++(12)--函数基础:按值传递、传递数组、函数指针

    模块化编程--函数 1. 函数基本知识 2. 函数的参数 2.1 按值传递机制(小议按引用传递) 2.2 使用数组做函数参数(用户头文件,const的防改) 2.3 使用二维数组作为函数的参数 2.4 ...

  7. 传递数组_Fortran:派生数组与数组传递进子程序耗费时间比较

    在优化程序的过程中发现其中存在大量的派生类型变量(type),同时发现Fortran子程序可以接受type类型数组中元素,即将type类型中元素当作独立的数组传递.传递过程如下所示: ... type ...

  8. ajax传递数组怎么传?ajax数组传递

    在我们平时的开发中,经常会需要用到ajax,关于ajax是什么,又该如何传递参数,相信通过上几篇文章你们已经有所了解.但是,ajax中要如何传递数组你们又知道吗?今天我们就来聊一聊ajax中该如何传递 ...

  9. 函数中参数有数组时注意的小问题(不一定要传递数组长度,不用返回数组,可以在函数中改变数组元素值)

    函数中参数有数组时注意的小问题: 1.不一定要传递数组长度 2.不用返回数组,可以在函数中改变数组元素值 通过下面这个小例子来验证: #include<iostream> #include ...

最新文章

  1. 『中级篇』k8s基础网络Cluster Network(66)
  2. 初次安装Magento商城 后台报错的解决方案
  3. semaphore, completion 和 wait_queue
  4. DIV遮罩层--数据缓冲效果的实现
  5. Facebook电商新尝试:看完广告想买马上就可以买
  6. circle函数用法 turtle_Turtle库与Time库基础知识分享(详细)
  7. Polly组件对微服务场景的价值
  8. Android Studio1.4.x JNI开发基础 - 简单实例
  9. [jQuery1.9]Cannot read property ‘msie’ of undefined错误的解决方法
  10. 《南溪的目标检测学习笔记》——权重初始化
  11. linux 信号 --- 产生 阻塞 捕捉
  12. 分布式日志收集系统: Facebook Scribe之配置文件
  13. 设计模式 (二十一) 策略模式
  14. Wordpress昼夜切换导航主题模板 NDNAV主题
  15. compiz在debian上的安装和使用
  16. 【软件工具】之下载微软官方正版 windows 系统
  17. 通过ROS进行多机协同控制
  18. 用matlab求解jacobi,用jacobi迭代法求解线性方程,求助matlab大师
  19. python vue+flask 跨域请求
  20. 蓝牙芯片蓝牙模块音频发射器杂音噪音问题解决方案

热门文章

  1. MongoDB学习笔记(四)--索引 性能优化
  2. Windows 7 beta 1补充汉化文件
  3. 9-10 原生安装 2
  4. php mysql英语在线考试系统+论文
  5. php 5.4 +iis+mysql_IIS+FastCGI+PHP5.4.4搭建PHP环境
  6. JAVA中为什么要用接口定义编程_【Java公开课|为什么要用Java接口,这些内容你一定要搞清楚】- 环球网校...
  7. 小米手机查看linux代码,如何识别小米设备-MIUI系统
  8. 音频分析工具librosa
  9. [Hadoop in China 2011] 淘宝OceanBase打造结构化NoSQL数据库
  10. 异构SOA系统架构之Asp.net实现(兼容dubbo)