1 回答
TA贡献1799条经验 获得超6个赞
您可以使用自己的多部分处理程序,以便以编程方式设置最大上载大小。例如,在控制器中使用 Servlet 文件上传:
DiskFileItemFactory factory = new DiskFileItemFactory(thresholdBytes, tempDir);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setFileSizeMax(maxFileSize);
for (FileItem item : upload.parseRequest(request)) {
// Save the file
File uploadedFile = new File(myPath);
item.write(uploadedFile);
}
为了更好地控制流处理,您可以使用自己的流式处理逻辑来使用和传输字节。item.getInputStream()
要使用此功能,您需要禁用Spring的默认多部分处理或。spring.servlet.multipart.enabled = falsespring.servlet.multipart.resolve-lazily = true
第二个选项是注册多个 Servlet,每个 servlet 处理不同的文件类型,并为每个 Servlet 定义不同的(具有和指定的)。然后从主服务器内部重定向到特定于文件类型的 Servlet。@MultipartConfigmaxFileSizemaxRequestSize
添加回答
举报
