Jersey多文件上传

@PUT
@Path("/{id}")
public Response update(@NotNull @PathParam("id") String id,@FormDataParam("requestBody") String requestBody,FormDataMultiPart formDataMultiPart) {
     List bodyParts = formDataMultiPart.getBodyParts();//获取文件
        bodyParts.forEach(r->{
            String mediaType = r.getMediaType().getType()+"/"+r.getMediaType().getSubtype();
            if(!mediaType.equals(MediaType.TEXT_PLAIN)) {
                String name = r.getContentDisposition().getParameters().get("name");
                BodyPartEntity bodyPartEntity = (BodyPartEntity) r.getEntity();
                String fileName = r.getContentDisposition().getFileName();
                String s3path = s3StorageService.saveFileToS3(bodyPartEntity.getInputStream(), fileName, TimeUtil.genTimemark());
                uploadFileMap.put(name,s3path);
            }
        });
}

bodyPartEntity.getInputStream()就是获取其中一个文件流,拿到文件流直接写文件就行了

你可能感兴趣的:(Jersey多文件上传)