From 3b41ed97d0f72cfd58de069da283f2f7ee3f09a5 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 27 六月 2025 09:57:36 +0800
Subject: [PATCH] 提交
---
server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java | 72 +++++++++++++++++++++++++++++++-----
1 files changed, 62 insertions(+), 10 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java b/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
index 8e465b6..eb43b42 100644
--- a/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
+++ b/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
@@ -1,14 +1,9 @@
package com.doumee.core.utils.aliyun;
-import com.aliyun.auth.credentials.Credential;
-import com.aliyun.auth.credentials.provider.StaticCredentialProvider;
import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSSClient;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.*;
-import com.aliyun.sdk.service.cloudauth20190307.AsyncClient;
-import com.aliyun.sdk.service.cloudauth20190307.models.Id2MetaVerifyRequest;
-import com.aliyun.sdk.service.cloudauth20190307.models.Id2MetaVerifyResponse;
import com.doumee.core.utils.FileDigest;
import java.io.File;
import java.io.FileInputStream;
@@ -17,12 +12,9 @@
import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
import java.util.Map;
-import java.util.concurrent.CompletableFuture;
-
-import com.google.gson.Gson;
-import darabonba.core.client.ClientOverrideConfiguration;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.multipart.MultipartFile;
@@ -520,7 +512,7 @@
}
- public boolean uploadOnlineObject(InputStream inputStream, String bucketName, String key,
+ public boolean uploadOnlineObjectNew(InputStream inputStream, String bucketName, String key,
String mime) throws OSSException, ClientException, IOException {
if (inputStream != null) {
// 鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鍒涘缓
@@ -564,7 +556,67 @@
return false;
}
+ public static ProgressModel queryProgressModel(String id){
+ return PutObjectProgressListenerBiz.queryProgressModel(id);
+ }
+ public boolean uploadOnlineObject(InputStream inputStream, String bucketName, String key,String tempId,
+ long size,String mime) throws OSSException, ClientException, IOException {
+ try {
+ isExistBucket(bucketName);
+ ObjectMetadata objectMeta = new ObjectMetadata();
+ objectMeta.setContentLength(size>0?size:inputStream.available());
+ // 鍙互鍦╩etadata涓爣璁版枃浠剁被鍨�
+ if (StringUtils.isNotBlank(mime)) {
+ objectMeta.setContentType(mime);
+ }
+ PutObjectRequest putObjectRequest = null;
+ if(StringUtils.isNotBlank(tempId)){
+ ProgressModel pmodel = new ProgressModel();
+ pmodel.setKey(key);
+ pmodel.setId(tempId);
+ pmodel.setStatus(0);
+ pmodel.setStartDate(new Date());
+ pmodel.setTotalBytes(size>0?size:objectMeta.getContentLength());
+ putObjectRequest = new PutObjectRequest(bucketName, key, inputStream,objectMeta)
+ .withProgressListener(new PutObjectProgressListenerBiz(pmodel));
+// putObjectRequest.setProgressListener();
+ }else{
+ putObjectRequest = new PutObjectRequest(bucketName, key,
+ inputStream);
+ }
+ PutObjectResult putObjectResult = client.putObject(putObjectRequest);
+ return true;
+ // 涓嬭浇鏂囦欢鐨勫悓鏃舵寚瀹氳繘搴︽潯鍙傛暟銆傛澶凣etObjectProgressListenerDemo涓鸿皟鐢ㄧ被鐨勭被鍚嶏紝璇峰湪瀹為檯浣跨敤鏃舵浛鎹负鐩稿簲鐨勭被鍚嶃��
+// ossClient.getObject(new GetObjectRequest(bucketName,objectName).
+// <GetObjectRequest>withProgressListener(new GetObjectProgressListenerDemo()));
+
+ } catch (OSSException oe) {
+ System.out.println("Caught an OSSException, which means your request made it to OSS, "
+ + "but was rejected with an error response for some reason.");
+ System.out.println("Error Message:" + oe.getErrorMessage());
+ System.out.println("Error Code:" + oe.getErrorCode());
+ System.out.println("Request ID:" + oe.getRequestId());
+ System.out.println("Host ID:" + oe.getHostId());
+ } catch (ClientException ce) {
+ System.out.println("Caught an ClientException, which means the client encountered "
+ + "a serious internal problem while trying to communicate with OSS, "
+ + "such as not being able to access the network.");
+ System.out.println("Error Message:" + ce.getMessage());
+ } finally {
+ if (inputStream != null) {
+ // 鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鍒涘缓
+ inputStream.close();
+ }
+ if (client != null) {
+ client.shutdown();
+ }
+ }
+
+
+ return false;
+
+ }
--
Gitblit v1.9.3