Dav*_*hen 6 spring file-upload file multipart spring-boot
我使用spring boot来上传文件.文件大小通常约为2GB,我们不能使用默认的spring引导,StandardServletMultipartResolver或者CommonsMultipartResolver因为服务器具有有限的资源(磁盘空间)或内存用于缓冲.因此,我们希望获得文件输入,并将文件直接存储到云存储中.
我知道spring boot有multipart.enabled属性所以我可以将它设置为false以跳过弹簧MultipartResolver.但这会全局禁用multipart.有没有人知道是否有办法通过控制器/方法禁用multipart?
如果您启用resolve-lazily,结果正是我认为您所要求的。
spring.servlet.multipart.enabled = true
spring.servlet.multipart.resolve-lazily = true
Run Code Online (Sandbox Code Playgroud)
现在您可以使用任一形式的签名编写控制器。
由内置的多部分解析器预解析...
@PostMapping("/upload1")
public ResponseEntity<Void> postUpload1(
@RequestParam("metadata") MultipartFile metadata,
@RequestParam("payload") MultipartFile payload)
Run Code Online (Sandbox Code Playgroud)
或后解析(您可以自己解析)...
@PostMapping(path = "/upload2", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public ResponseEntity<Void> postUpload2(HttpServletRequest rawRequest)
Run Code Online (Sandbox Code Playgroud)
Ste*_*com -1
这显示了如何做到这一点:
springboot-large-streaming-文件上传-使用-apache-commons-fileupload
看看balajeerc的回答
| 归档时间: |
|
| 查看次数: |
5844 次 |
| 最近记录: |