From 0883b0402cb5a52c64074085a11b665cad8da0a9 Mon Sep 17 00:00:00 2001 From: jeffreykzli Date: Fri, 26 Jul 2024 15:48:33 +0800 Subject: [PATCH 1/2] update obj demo --- .../java/com/qcloud/cos/demo/CopyFileDemo.java | 4 ++-- src/main/java/com/qcloud/cos/demo/DelFileDemo.java | 8 ++++---- .../java/com/qcloud/cos/demo/GetObjectDemo.java | 8 ++++---- .../com/qcloud/cos/demo/GetObjectMetadataDemo.java | 10 ++++++---- .../java/com/qcloud/cos/demo/ListObjectsDemo.java | 8 ++++---- .../qcloud/cos/demo/ModifyObjectMetadataDemo.java | 14 ++++++++------ .../com/qcloud/cos/demo/MultipartUploadDemo.java | 8 ++++---- .../java/com/qcloud/cos/demo/PutObjectDemo.java | 10 +++++----- .../com/qcloud/cos/demo/TransferManagerDemo.java | 8 ++++---- 9 files changed, 41 insertions(+), 37 deletions(-) diff --git a/src/main/java/com/qcloud/cos/demo/CopyFileDemo.java b/src/main/java/com/qcloud/cos/demo/CopyFileDemo.java index 577783c1..d2573d0c 100644 --- a/src/main/java/com/qcloud/cos/demo/CopyFileDemo.java +++ b/src/main/java/com/qcloud/cos/demo/CopyFileDemo.java @@ -17,8 +17,8 @@ import com.qcloud.cos.transfer.TransferManager; public class CopyFileDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); private static String srcBucketName = "srcBucket-12500000000"; private static String srcKey = "aaa/bbb.txt"; private static String destBucketName = "destBucket-12500000000"; diff --git a/src/main/java/com/qcloud/cos/demo/DelFileDemo.java b/src/main/java/com/qcloud/cos/demo/DelFileDemo.java index b58b435c..ed512f51 100644 --- a/src/main/java/com/qcloud/cos/demo/DelFileDemo.java +++ b/src/main/java/com/qcloud/cos/demo/DelFileDemo.java @@ -21,10 +21,10 @@ * DelFileDemo展示了删除单个文件的DelObject, 删除多个文件的DelObjects的使用示例. */ public class DelFileDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String bucketName = "examplebucket-12500000000"; - private static String region = "ap-guangzhou"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); private static COSClient cosClient = createCli(); public static void main(String[] args) { delSingleFile(); diff --git a/src/main/java/com/qcloud/cos/demo/GetObjectDemo.java b/src/main/java/com/qcloud/cos/demo/GetObjectDemo.java index 41ad82a9..ad547585 100644 --- a/src/main/java/com/qcloud/cos/demo/GetObjectDemo.java +++ b/src/main/java/com/qcloud/cos/demo/GetObjectDemo.java @@ -17,10 +17,10 @@ import com.qcloud.cos.utils.IOUtils; public class GetObjectDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String bucketName = "examplebucket-12500000000"; - private static String region = "ap-guangzhou"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); private static COSClient cosClient = createClient(); public static void main(String[] args) { diff --git a/src/main/java/com/qcloud/cos/demo/GetObjectMetadataDemo.java b/src/main/java/com/qcloud/cos/demo/GetObjectMetadataDemo.java index 35429ce2..d73d15f3 100644 --- a/src/main/java/com/qcloud/cos/demo/GetObjectMetadataDemo.java +++ b/src/main/java/com/qcloud/cos/demo/GetObjectMetadataDemo.java @@ -9,19 +9,21 @@ public class GetObjectMetadataDemo { + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); public static void main(String[] args) { getObjectMetadataDemo(); } private static void getObjectMetadataDemo() { // 1 初始化用户身份信息(secretId, secretKey) - COSCredentials cred = new BasicCOSCredentials("AKIDXXXXXXXX", "1A2Z3YYYYYYYYYY"); + COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 - ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); + ClientConfig clientConfig = new ClientConfig(new Region(region)); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); - // bucket名需包含appid - String bucketName = "mybucket-12500000000"; String key = "aaa/bbb.txt"; ObjectMetadata objectMetadata = cosclient.getObjectMetadata(bucketName, key); diff --git a/src/main/java/com/qcloud/cos/demo/ListObjectsDemo.java b/src/main/java/com/qcloud/cos/demo/ListObjectsDemo.java index 8438a0ba..d75eb970 100644 --- a/src/main/java/com/qcloud/cos/demo/ListObjectsDemo.java +++ b/src/main/java/com/qcloud/cos/demo/ListObjectsDemo.java @@ -20,10 +20,10 @@ * ListObjectsDemo展示了如何列出object */ public class ListObjectsDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String bucketName = "examplebucket-12500000000"; - private static String region = "ap-guangzhou"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); private static COSClient cosClient = createClient(); public static void main(String[] args) { diff --git a/src/main/java/com/qcloud/cos/demo/ModifyObjectMetadataDemo.java b/src/main/java/com/qcloud/cos/demo/ModifyObjectMetadataDemo.java index f7be7427..a1f8306a 100644 --- a/src/main/java/com/qcloud/cos/demo/ModifyObjectMetadataDemo.java +++ b/src/main/java/com/qcloud/cos/demo/ModifyObjectMetadataDemo.java @@ -12,17 +12,19 @@ import com.qcloud.cos.region.Region; public class ModifyObjectMetadataDemo { + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); public static void main(String[] args) { // 1 初始化用户身份信息(secretId, secretKey) - COSCredentials cred = new BasicCOSCredentials("AKIDXXXXXXXX", "1A2Z3YYYYYYYYYY"); + COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 - Region region = new Region("ap-beijing"); - ClientConfig clientConfig = new ClientConfig(region); + Region cosRegion = new Region(region); + ClientConfig clientConfig = new ClientConfig(cosRegion); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); - // 存储桶的命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式 - String bucketName = "examplebucket-1250000000"; String key = "exampleobject"; ObjectMetadata objectMetadata = cosclient.getObjectMetadata(bucketName, key); @@ -33,7 +35,7 @@ public static void main(String[] args) { objectMetadata.setHeader("x-cos-storage-class", "STANDARD_IA"); objectMetadata.setContentType("text/plain"); - CopyObjectRequest copyObjectRequest = new CopyObjectRequest(region, bucketName, key, bucketName, key); + CopyObjectRequest copyObjectRequest = new CopyObjectRequest(cosRegion, bucketName, key, bucketName, key); copyObjectRequest.setNewObjectMetadata(objectMetadata); try { diff --git a/src/main/java/com/qcloud/cos/demo/MultipartUploadDemo.java b/src/main/java/com/qcloud/cos/demo/MultipartUploadDemo.java index 82fb82a0..5ebf3971 100644 --- a/src/main/java/com/qcloud/cos/demo/MultipartUploadDemo.java +++ b/src/main/java/com/qcloud/cos/demo/MultipartUploadDemo.java @@ -32,10 +32,10 @@ * 分块上传的完成逻辑较复杂,需要经历多个步骤, 建议用户使用TransferManager中封装好的上传接口来进行文件的上传 */ public class MultipartUploadDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String region = "ap-guangzhou"; - private static String bucketName = "mybucket-12500000000"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String region = System.getenv("REGION"); + private static String bucketName = System.getenv("BUCKET_NAME"); private static String key = "aaa/bbb.txt"; private static COSClient cosClient = createCli(region); diff --git a/src/main/java/com/qcloud/cos/demo/PutObjectDemo.java b/src/main/java/com/qcloud/cos/demo/PutObjectDemo.java index cc378117..6f4414e8 100644 --- a/src/main/java/com/qcloud/cos/demo/PutObjectDemo.java +++ b/src/main/java/com/qcloud/cos/demo/PutObjectDemo.java @@ -16,11 +16,11 @@ import com.qcloud.cos.region.Region; public class PutObjectDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String bucketName = "examplebucket-12500000000"; - private static String region = "ap-guangzhou"; - private static COSClient cosClient = createCli();; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); + private static COSClient cosClient = createCli(); public static void main(String[] args) { try { diff --git a/src/main/java/com/qcloud/cos/demo/TransferManagerDemo.java b/src/main/java/com/qcloud/cos/demo/TransferManagerDemo.java index 4321572b..aff31c2d 100644 --- a/src/main/java/com/qcloud/cos/demo/TransferManagerDemo.java +++ b/src/main/java/com/qcloud/cos/demo/TransferManagerDemo.java @@ -35,10 +35,10 @@ // TransferManager提供异步的上传文件, 下载文件,copy文件的高级API接口 // 可以根据文件大小自动的选择上传接口或者copy接口,方便用户使用, 无需自行封装较复杂的分块上传或者分块copy public class TransferManagerDemo { - private static String secretId = "AKIDXXXXXXXX"; - private static String secretKey = "1A2Z3YYYYYYYYYY"; - private static String cosRegion = "ap-guangzhou"; - private static String bucketName = "examplebucket-12500000000"; + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String cosRegion = System.getenv("REGION"); + private static String bucketName = System.getenv("BUCKET_NAME"); public static void main(String[] args) { //multipartUploadWithMetaData(); resumableDownloadFile(); From 9b91acdcfa12ec013eab090172b06fb86d53d6fc Mon Sep 17 00:00:00 2001 From: jeffreykzli Date: Fri, 26 Jul 2024 16:10:26 +0800 Subject: [PATCH 2/2] update restore obj demo --- .../qcloud/cos/demo/RestoreObjectDemo.java | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/qcloud/cos/demo/RestoreObjectDemo.java b/src/main/java/com/qcloud/cos/demo/RestoreObjectDemo.java index 0d85f961..9f415259 100644 --- a/src/main/java/com/qcloud/cos/demo/RestoreObjectDemo.java +++ b/src/main/java/com/qcloud/cos/demo/RestoreObjectDemo.java @@ -4,19 +4,32 @@ import com.qcloud.cos.ClientConfig; import com.qcloud.cos.auth.BasicCOSCredentials; import com.qcloud.cos.auth.COSCredentials; -import com.qcloud.cos.model.*; +import com.qcloud.cos.model.CASJobParameters; +import com.qcloud.cos.model.ObjectMetadata; +import com.qcloud.cos.model.Tier; +import com.qcloud.cos.model.PutObjectRequest; +import com.qcloud.cos.model.PutObjectResult; +import com.qcloud.cos.model.RestoreObjectRequest; import com.qcloud.cos.region.Region; public class RestoreObjectDemo { + private static String secretId = System.getenv("SECRETID"); + private static String secretKey = System.getenv("SECRETKEY"); + private static String bucketName = System.getenv("BUCKET_NAME"); + private static String region = System.getenv("REGION"); + + public static void main(String[] args) { + restoreObjectDemo(); + } + private static void restoreObjectDemo() { // 初始化用户身份信息(secretId, secretKey) - COSCredentials cred = new BasicCOSCredentials("AKIDXXXXXXXX", "1A2Z3YYYYYYYYYY"); + COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); // 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 - ClientConfig clientConfig = new ClientConfig(new Region("ap-guangzhou")); + ClientConfig clientConfig = new ClientConfig(new Region(region)); // 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); String key = "test/my_data.txt"; - String bucketName = "mybucket-12500000000"; // 上传一个类型为归档的文件 File localFile = new File("test/my_data.txt"); @@ -25,6 +38,7 @@ private static void restoreObjectDemo() { PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); putObjectRequest.setMetadata(metadata); PutObjectResult putObjectResult = cosclient.putObject(putObjectRequest); + System.out.println("finish upload object, request id: " + putObjectResult.getRequestId()); // 设置restore得到的临时副本过期天数为1天 RestoreObjectRequest restoreObjectRequest = new RestoreObjectRequest(bucketName, key, 1); @@ -34,7 +48,4 @@ private static void restoreObjectDemo() { restoreObjectRequest.setCASJobParameters(casJobParameters); cosclient.restoreObject(restoreObjectRequest); } - public static void main(String[] args) { - restoreObjectDemo(); - } }