|
|
|
@ -1,7 +1,11 @@
|
|
|
|
|
package com.dsideal.YunXiaoTools.Utils;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.io.FileUtil;
|
|
|
|
|
import com.jfinal.kit.PropKit;
|
|
|
|
|
import com.obs.services.ObsClient;
|
|
|
|
|
import com.obs.services.model.ListObjectsRequest;
|
|
|
|
|
import com.obs.services.model.ObjectListing;
|
|
|
|
|
import com.obs.services.model.ObsObject;
|
|
|
|
|
import com.obs.services.model.PutObjectResult;
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
@ -16,11 +20,25 @@ public class ObsUtil {
|
|
|
|
|
String ak = PropKit.get("obs_accessKeyId");
|
|
|
|
|
String sk = PropKit.get("obs_accessKeySecret");
|
|
|
|
|
String bucketName = PropKit.get("obs_bucket_name");
|
|
|
|
|
|
|
|
|
|
//obs文件夹位置
|
|
|
|
|
String directory = objectKey.substring(0, objectKey.lastIndexOf("/") + 1);
|
|
|
|
|
// 创建ObsClient实例
|
|
|
|
|
ObsClient obsClient = new ObsClient(ak, sk, endPoint);
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
// 列出并删除指定目录下的ZIP文件
|
|
|
|
|
ListObjectsRequest request = new ListObjectsRequest(bucketName);
|
|
|
|
|
request.setPrefix(directory); // 设置目录前缀
|
|
|
|
|
request.setMaxKeys(1000);
|
|
|
|
|
|
|
|
|
|
ObjectListing result = obsClient.listObjects(request);
|
|
|
|
|
for (ObsObject obsObject : result.getObjects()) {
|
|
|
|
|
String key = obsObject.getObjectKey();
|
|
|
|
|
if (key.toLowerCase().endsWith(".zip")) {
|
|
|
|
|
System.out.println("删除旧文件: " + key);
|
|
|
|
|
obsClient.deleteObject(bucketName, key);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 上传文件
|
|
|
|
|
PutObjectResult res=obsClient.putObject(bucketName, objectKey, new File(localFile));
|
|
|
|
|
System.out.println(res.getBucketName());
|
|
|
|
|