|
|
@@ -5,6 +5,7 @@ import com.aliyun.oss.OSS;
|
|
|
import com.aliyun.oss.OSSException;
|
|
|
import com.aliyun.oss.model.*;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.jeecg.common.util.CommonUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
@@ -73,14 +74,19 @@ public class OSSClientUtil {
|
|
|
//新文件名=文件名+时间戳+后缀名
|
|
|
fileName = originalFilename.substring(0, originalFilename.lastIndexOf(".")) + "_" + System.currentTimeMillis() + substring;
|
|
|
objectName = fileDir + fileName;
|
|
|
+ //上传返回
|
|
|
+ String ret = "";
|
|
|
if (file.getSize() > pageSize) {
|
|
|
log.info("分片上传");
|
|
|
//分片上传
|
|
|
- this.uploadPartOSS(objectName, file);
|
|
|
+ ret = this.uploadPartOSS(objectName, file);
|
|
|
} else {
|
|
|
log.info("简单上传");
|
|
|
//简单上传
|
|
|
- this.uploadFileOSS(inputStream, objectName);
|
|
|
+ ret = this.uploadFileOSS(inputStream, objectName);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(ret)) {
|
|
|
+ return "文件上传失败";
|
|
|
}
|
|
|
} catch (IOException e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -143,7 +149,8 @@ public class OSSClientUtil {
|
|
|
* @param objectName
|
|
|
* @param file
|
|
|
*/
|
|
|
- public void uploadPartOSS(String objectName, MultipartFile file) {
|
|
|
+ public String uploadPartOSS(String objectName, MultipartFile file) {
|
|
|
+ String ret = "";
|
|
|
try {
|
|
|
//partETags是PartETag的集合。PartETag由分片的ETag和分片号组成。
|
|
|
List<PartETag> partETags = new ArrayList<PartETag>();
|
|
|
@@ -178,20 +185,22 @@ public class OSSClientUtil {
|
|
|
partETags.add(uploadPartResult.getPartETag());
|
|
|
}
|
|
|
//完成上传
|
|
|
- completeMultipartUpload(objectName, partETags, uploadId);
|
|
|
+ ret = completeMultipartUpload(objectName, partETags, uploadId);
|
|
|
} catch (IOException e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
+ return ret;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 完成分片上传
|
|
|
*/
|
|
|
- public void completeMultipartUpload(String fileName, List<PartETag> partETags, String uploadId) {
|
|
|
+ public String completeMultipartUpload(String fileName, List<PartETag> partETags, String uploadId) {
|
|
|
//创建CompleteMultipartUploadRequest对象。
|
|
|
CompleteMultipartUploadRequest completeMultipartUploadRequest = new CompleteMultipartUploadRequest(bucketName, fileName, uploadId, partETags);
|
|
|
// 完成上传。
|
|
|
CompleteMultipartUploadResult completeMultipartUploadResult = ossClient.completeMultipartUpload(completeMultipartUploadRequest);
|
|
|
+ return completeMultipartUploadResult.getETag();
|
|
|
}
|
|
|
|
|
|
/**
|