直接上代码
AliyunOssUtils
package com.jingle.common.utils;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import com.aliyun.oss.ClientBuilderConfiguration;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.CompleteMultipartUploadRequest;
import com.aliyun.oss.model.CompleteMultipartUploadResult;
import com.aliyun.oss.model.InitiateMultipartUploadRequest;
import com.aliyun.oss.model.InitiateMultipartUploadResult;
import com.aliyun.oss.model.OSSObject;
import com.aliyun.oss.model.PartETag;
import com.aliyun.oss.model.PutObjectResult;
import com.aliyun.oss.model.UploadPartRequest;
import com.aliyun.oss.model.UploadPartResult;
import com.jingle.framework.config.AliyunOssProperties;
import cn.hutool.core.date.DateTime;
@Component
public class AliyunOssUtils {
public static final Logger logger = LoggerFactory.getLogger(AliyunOssUtils.class);
@Autowired
private AliyunOssProperties aliyunConfig;
/** 上传文件 */
public String upLoad(MultipartFile uploadFile) {
OSS client = aliyunConfig.oSSClient();
String fileName = uploadFile.getOriginalFilename();
String filePath = getFilePath(fileName);
try {
// 上传文件
PutObjectResult result = client.putObject(aliyunConfig.getBucket(), filePath, new ByteArrayInputStream(uploadFile.getBytes()));
if (result == null) {
return null;
}
}catch (IOException oe){
logger.error(oe.getMessag