首页 > 解决方案 > 如何在 Spring 中复制 MultipartFile?

问题描述

在我的方法中,我有一个MultipartFile(StreamingMultipartFile 的实例)(org.springframework.web.multipart.MultipartFile)作为参数传递。

在此方法中,我需要获取文件的副本,因为它的 InputStream 将由另一个方法读取,并且文件将在此之后自行传递。我试图重置文件的 InputStream 但它不起作用。

我还尝试使用org.springframework.util包中的 GSON 库和 SerializationUtils 方法进行序列化/反序列化,但由于该类没有无参数构造函数,因此没有成功。

那么如何获得这样的文件的副本呢?

标签: javaspringspring-mvcserialization

解决方案


我找到了下一个解决方案 - 使用下一个字段创建自定义类:

private final byte[] fileContent;
private final String fileName;

此外,该类应实现MultipartFile接口并相应地覆盖基于指定字段的所有方法。


推荐阅读