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

Java 获取 MultipartFile

项目中有时候会需要调用别人的接口上传一个文件,别人的接口参数为 MultipartFile 类型,需要对 File 文件进行一个转换再进行上传。

这里整理了一个较为实用的方法:

public static MultipartFile ofMultipartFile(File file) {FileItem fileItem = new DiskFileItemFactory().createItem("file", MediaType.MULTIPART_FORM_DATA_VALUE, true, file.getName());try (InputStream inputStream = Files.newInputStream(file.toPath());OutputStream outputStream = fileItem.getOutputStream()) {IOUtils.copy(inputStream, outputStream);} catch (Exception e) {throw new IllegalArgumentException(e.getMessage(), e);}return new CommonsMultipartFile(fileItem);
}

虽然用 MockMultipartFile 实现更简单,只需要:

public static MultipartFile ofMultipartFile(File file) throws Exception {return new MockMultipartFile("file", file.getName(), MediaType.MULTIPART_FORM_DATA_VALUE, Files.newInputStream(file.toPath()));
}

但一方面需要引入测试依赖,另一方面将测试类用于实际开发场景总觉得怪怪的。

http://www.jsqmd.com/news/28627/

相关文章:

  • 革命性的智能文档处理与问答引擎
  • 20251101
  • 第12天(中等题 越长越合法滑动窗口)
  • 正式发布!2025年11月广州心理咨询机构哪家专业?
  • 大模型开发 - 02 Spring AI Concepts - 详解
  • Zookeeper环境搭建
  • 2025 年 11 月降膜蒸发器,结晶蒸发器,真空浓缩器厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 十月第四周组会报告ppt--CBANet面向学习中心和边界感知的3D牙齿分割实例表示(Computersgraphics) 2025.8
  • 2025 年 11 月废水蒸发器,多效蒸发器,低温蒸发器厂家最新推荐,产能、专利、环保三维数据透视
  • Java方法——可变参数
  • 2025 年 11 月曝气器厂家最新推荐,专业制造与品牌保障口碑之选
  • sigmoid函数求导
  • [20251028]SQLPlus的行编辑器.txt
  • 【深基7.例4】歌唱比赛
  • 美团多智能体WOWService智能系统概要
  • Python 潮流周刊#125:个人 AI 笔记本工具
  • Java方法——方法的重载、命令行传参
  • 2025 年 11 月石灰料仓厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 2025 年 11 月石灰料仓厂家最新推荐,技术实力与市场口碑深度解析
  • Ubuntu 22.04 LTS 安装 gitlab
  • SecureCRT 9.6.4 中文便携+绿色版 - 终端工具
  • Day28-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\IPDemo\BSDemo+TCP
  • Linux桌面折腾小记
  • CSP-S邮寄
  • 关于使用Prism的View和ViewModel不能关联问题
  • Elasticsearch命令执行增删改查
  • [记于2025.7.20]
  • 显卡太强也是一种罪过
  • 软件工程团队项目一
  • 当理想触碰现实:关于“干预”与我的退缩