cloud-etl-engine/cloud-etl-server/src/main/java/com/muyu/javacomplier/OSSFileDownload.java

49 lines
1.7 KiB
Java

package com.muyu.javacomplier;
import com.aliyun.oss.OSSClient;
import com.aliyun.oss.model.GetObjectRequest;
import com.aliyun.oss.model.ObjectMetadata;
import com.muyu.domain.constants.Result;
import java.io.File;
public class OSSFileDownload {
private static final String endpoint = "https://oss-cn-shanghai.aliyuncs.com";
private static final String accessKeyId = "LTAI5t8LmMHfW8ckPaAZR6oQ";
private static final String accessKeySecret = "pwzEwkpxcTFgurkARyr7sG7V6syc9x";
private static final String bucketName = "011811";
// OSS文件路径
private static final String filePath = "build/rule/version/";
private static final String fileName = "engine";
public static Result<Object> streamingDownload(String fileName) {
String source = null;
// 创建 OSSClient 实例
OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
// 判断 bucket 是否存在
Boolean flag_bucket = ossClient.doesBucketExist(bucketName);
if (!flag_bucket) {
System.out.println("bucket不存在");
return Result.error("bucket不存在");
}
String objectName = fileName + ".java";
Boolean flag_file = ossClient.doesObjectExist(bucketName, filePath + objectName);
if (!flag_file) {
System.out.println("预下载文件不存在");
return Result.error("预下载文件不存在");
}
// 本地文件下载路径
String localPath = "/home/" + objectName;
ObjectMetadata object = ossClient.getObject(new GetObjectRequest(bucketName, filePath + objectName), new File(localPath));
System.out.println(object);
ossClient.shutdown();
return Result.success(source);
}
}