<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.10.2</version>
</dependency>
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.PutObjectRequest;
import org.apache.commons.lang3.RandomUtils;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.junit.Test;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
/**
* --Чан Цзячжуан
* --24 сентября 2020 г.
*
* Alibaba Cloud OSS Файл просто загружается и расширение файла не определяется. любой тип файла
* Введите адрес файла для загрузки и верните загруженный адрес.
* Использовать режим загрузки файлов
* Версия:0.3
* -----------------------Координаты Maven-------------------------
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.10.2</version>
</dependency>
*/
public class OssUtils {
/**
* Загрузить обратный путь
*/
public static String getFileUrl(String url){
//Файловый поток
File file = new File(url);
// Конечная точка использует Ханчжоу в качестве примера. Для других регионов укажите фактическую ситуацию и посмотрите свою собственную конечную точку (региональный узел).
String endpoint = "http://oss-cn-beijing.aliyuncs.com";
// Основной аккаунт Alibaba Cloud AccessKey имеет права доступа ко всем API.
String accessKeyId = «Ваш accessKeyId ";
String accessKeySecret = «Ваш доступKeySecret ";
// Создайте экземпляр OSSClient.
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
/*
Создайте объект PutObjectRequest.
<yourObjectName>Загрузить файлы вOSSВам необходимо указать полный путь, включая суффикс файла.,Например abc/efg/123.jpg.
filePath: создать путь
*/
String filePath = getFilePath(file.getName());
PutObjectRequest putObjectRequest = new PutObjectRequest("Ваше ведро имя", filePath,file);
// Загрузите файлы.
ossClient.putObject(putObjectRequest);
// Закройте OSSClient.
ossClient.shutdown();
//обратный адрес
return "https://ваше доменное имя Bucket/"+filePath;
}
/**
* Удалить файлы
* @param url
*/
public static void delete(String url){
new File(url).delete();
}
/**
* определить класс Используется для генерации имен загружаемых файлов.
*/
private static String getFilePath(String sourceFileName) {
DateTime dateTime = new DateTime();
return "file/" + dateTime.toString("yyyy")
+ "/" + dateTime.toString("MM") + "/"
+ dateTime.toString("dd") + "/" + System.currentTimeMillis() +
RandomUtils.nextInt(100, 9999) + "." +
StringUtils.substringAfterLast(sourceFileName, ".");
}
}