From 16b704d18a875d1fb63827aaa507790ba2bef5be Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期二, 23 四月 2024 11:44:13 +0800 Subject: [PATCH] JK最终代码提交 --- guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/OssController.java | 91 ++++++++++++++++++++++++++++++--------------- 1 files changed, 60 insertions(+), 31 deletions(-) diff --git a/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/OssController.java b/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/OssController.java index 5c5b2d5..1d81ccf 100644 --- a/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/OssController.java +++ b/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/OssController.java @@ -1,51 +1,80 @@ package com.stylefeng.guns.modular.code.controller; -import com.aliyun.oss.OSSClient; -import com.aliyun.oss.model.ObjectMetadata; -import com.aliyun.oss.model.PutObjectRequest; -import com.aliyun.oss.model.PutObjectResult; + +import com.stylefeng.guns.modular.system.util.*; import io.swagger.annotations.ApiOperation; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.io.IOException; + +import java.io.*; @CrossOrigin @RestController @RequestMapping("/base/oss") public class OssController { - private static final String endpoint = "oss-cn-hongkong.aliyuncs.com"; - private static final String accessKeyId = "LTAI5tQZzqsZYX5gw8yRNchQ"; - private static final String accessKeySecret = "5yJVdXwRzwPZwKKXp07lRAc7tkTxQp"; - private static final String bucketName = "bizuphk"; + private static final String endpoint = "obs.cn-north-4.myhuaweicloud.com"; + private static final String accessKeyId = "DRJFJRVQ9KVLQUSJUROI"; + private static final String accessKeySecret = "3zpPkULh0a8CTTYjKL4f7szQZECkvVol4SwNab0f"; + private static final String bucketName = "jkjianshen"; @PostMapping("/upload") @ApiOperation(value = "文件上传",tags = "文件上传") - public ResponseEntity<String> upload(@RequestParam("file") MultipartFile file) throws IOException { - // 创建 OSSClient 实例 - OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret); - - - // 创建 PutObjectRequest 对象 - PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, file.getOriginalFilename(), file.getInputStream()); - - ObjectMetadata metadata = new ObjectMetadata(); - // 取消文件缓存,文件每次都会从OSS服务器获取 - metadata.setHeader("Cache-Control", "no-cache"); - metadata.setHeader("Expires", "0"); - - - // 上传文件 - PutObjectResult putObjectResult = ossClient.putObject(putObjectRequest); - - // 关闭 OSSClient 实例 - ossClient.shutdown(); - - String fileUrl = "https://" + bucketName + "." + endpoint + "/" + file.getOriginalFilename(); - return ResponseEntity.ok(fileUrl); + public String upload(@RequestParam("file") MultipartFile file) throws IOException { + String s = ObsUploadUtil.obsUpload(file); + return s; } + @PostMapping("/uploadVideo") + @ApiOperation(value = "视频上传",tags = "文件上传") + public String uploadVideo(@RequestParam("file") MultipartFile file) throws Exception { + // 获取文件名 + String fileName = file.getOriginalFilename(); + // 构建目标文件路径 + String filePath = "/usr/local/temp" + fileName; +// String filePath = "C:/temp/" + fileName; + // 创建目标文件对象 + File targetFile = new File(filePath); + // 将 MultipartFile 内容写入目标文件 + try (FileOutputStream fos = new FileOutputStream(targetFile)) { + fos.write(file.getBytes()); + } + String s = UploadVideoUtil.endUpload(targetFile.toString(), UUIDUtil.getRandomCode(5)+fileName); + // 创建要删除的文件对象 + File fileToDelete = new File(targetFile.toString()); + // 检查文件是否存在,并删除文件 + if (fileToDelete.exists()) { + fileToDelete.delete(); + } + return s; + } + +// @PostMapping("/upload") +// @ApiOperation(value = "文件上传",tags = "文件上传") +// public ResponseEntity<String> upload(@RequestParam("file") MultipartFile file) throws IOException { +// // 创建 OSSClient 实例 +// OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret); +// +// +// // 创建 PutObjectRequest 对象 +// PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, file.getOriginalFilename(), file.getInputStream()); +// +// ObjectMetadata metadata = new ObjectMetadata(); +// // 取消文件缓存,文件每次都会从OSS服务器获取 +// metadata.setHeader("Cache-Control", "no-cache"); +// metadata.setHeader("Expires", "0"); +// +// +// // 上传文件 +// PutObjectResult putObjectResult = ossClient.putObject(putObjectRequest); +// +// // 关闭 OSSClient 实例 +// ossClient.shutdown(); +// +// String fileUrl = "https://" + bucketName + "." + endpoint + "/" + file.getOriginalFilename(); +// return ResponseEntity.ok(fileUrl); +// } } -- Gitblit v1.7.1