package com.pashanhoo.common.util.fileupload; import com.pashanhoo.common.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; /** * 文件上传 */ @Api(tags = "文件控制器") @RequestMapping("/file") @RestController public class FileController { @Autowired MinioUtil minioUtil; @Autowired MinioConfig minioConfig; @RequestMapping(value = "/upload", method = RequestMethod.POST) @ApiOperation("上传单个文件") public Result upload(@RequestPart("file") MultipartFile file, HttpServletResponse response) { try { return Result.ok(minioUtil.upload(file)); } catch (Exception e) { return Result.exception(e.getMessage()); } } @RequestMapping(value = "/batchUpload", method = RequestMethod.POST,headers = "content-type=multipart/form-data") @ApiOperation("上传多个文件") public Result upload(@RequestPart("file") MultipartFile[] files, HttpServletResponse response) { try { return Result.ok(minioUtil.batchUpload(files)); } catch (Exception e) { return Result.exception(e.getMessage()); } } @DeleteMapping("/deleteFile") @ApiOperation("删除文件") public Result deleteFile(@ApiParam("存储url") @RequestParam("saveUrl") String saveUrl){ try { minioUtil.removeObject(minioConfig.getBucket(), saveUrl); return Result.ok(); } catch (Exception e) { return Result.exception(e.getMessage()); } } }