Pu Zhibing
2024-12-16 7e9667699856022efcac2941eacddd25e20d0c1f
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ObsUploadUtil.java
New file
@@ -0,0 +1,78 @@
package com.ruoyi.common.core.utils;
import com.obs.services.ObsClient;
import com.obs.services.model.ObjectMetadata;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;
public class ObsUploadUtil {
   public static String endPoint = "obs.cn-southwest-2.myhuaweicloud.com";
   public static String accessKeyId = "LP9N1TLAYN8ERS1PVIYK";
   public static String accessKeySecret = "bV55lFHi1cG0SYBvnab8yIgDX6etKRSLh5j1gkPR";
   public static String bucketName = "haitunyingyu";
   public static String oss_domain = "https://haitunyingyu.obs.cn-southwest-2.myhuaweicloud.com/";
   // 创建ObsClient实例
   public static ObsClient obsClient = new ObsClient(accessKeyId, accessKeySecret, endPoint);
   public static String obsUpload(MultipartFile file) throws IOException{
      //CommonsMultipartFile file = (CommonsMultipartFile)multipartFile;
      String fileName = "";
      if(file!=null && !"".equals(file.getOriginalFilename()) && file.getOriginalFilename()!=null){
         InputStream content = file.getInputStream();//获得指定文件的输入流
         ObjectMetadata meta = new ObjectMetadata();// 创建上传Object的Metadata
         meta.setContentLength(file.getSize());  // 必须设置ContentLength
         String originalFilename = file.getOriginalFilename();
         if (originalFilename.contains("apk")){
            fileName = "bf2fe5c5499341e5bc0d56c0c7d5fb2e.apk";
            System.err.println("apk");
         }else{
            fileName =  UUID.randomUUID().toString().replaceAll("-","") + originalFilename.subSequence(originalFilename.lastIndexOf("."), originalFilename.length());
         }
         obsClient.putObject(bucketName,"admin/"+fileName,content,meta);// 上传Object.
         if(fileName != null && !"".equals(fileName)){
            System.out.println(fileName);
            fileName = oss_domain+"admin/"+fileName;
         }
      }
      return fileName;
   }
   /**
    * 删除某个Object
    *
    * @param bucketUrl
    * @return
    */
   public static boolean deleteObject(String bucketUrl) {
      try {
         bucketUrl=bucketUrl.replace(oss_domain+"web","");
         // 删除Object.
         obsClient.deleteObject(bucketName, bucketUrl);
      } catch (Exception e) {
         e.printStackTrace();
         return false;
      } finally {
         //ossClient.shutdown();
      }
      return true;
   }
//    public static void createBucket(String bucketName)
//     {
//         //初始化 OSSClient
////          ossClient = new OssClient(endPoint, accessKeyId, accessKeySecret);
//
//         // 新建一个Bucket
//         Bucket bucket = ossClient.createBucket(bucketName);
//         System.out.println(bucket.getName());
//         System.out.println(bucket.getCreationDate());
//     }
//
//    public static void main(String[] args) {
//       OssUploadUtil.createBucket("ssfdfsd");
//   }
}