一、上传时同时带上文件与其它参数
public JsonResult<void> submitBook(HttpServletRequest req,@RequestParam("picFile") MultipartFile file,Long bookBaseId,String isbn,String name,String author,String publishCompany){
这里的MultipartFile是spring mvc里的类
那么PostMan怎么配置请求参数?

header不用设置。
二、只上传文件,没有参数名
controller取文件代码:
DataInputStream dataStream = new DataInputStream(request.getInputStream());
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
byte[] buff = new byte[100]; //buff用于存放循环读取的临时数据
int rc = 0;
while ((rc = dataStream.read(buff, 0, 100)) > 0) {
outStream.write(buff, 0, rc);
}
dataStream.close();
byte[] byteData = outStream.toByteArray();
outStream.flush();
这里用的是request.getInputStream来获取文件,来看看postman的配置:

这次要设置一下header,如图:

要注意的是Content-Length参数必须有,而且值要准确,否则request.getInputStream方法就会报错或获取不了正确的文件。
那这个值是怎么来的,可以new File(xx.jpg).length()获取的值填到这里。
从这些参数的配置,是不是能学到一些http协议的参数的用法?
本文详细介绍如何使用SpringMVC框架进行文件上传操作,包括上传文件同时附带其他参数的方法及仅上传文件的处理方式。文章还分享了PostMan工具的具体配置步骤,以确保正确发送带有文件的HTTP请求。
1030

被折叠的 条评论
为什么被折叠?



