Java を使用して Alibaba Cloud Object Storage に接続する方法: 大規模なファイル管理とアクセス制御を実現する
Alibaba Cloud Object Storage Service (OSS) は、信頼性が高く、安全で、低コストで、高品質なサービスです。 -パフォーマンス スケーラブルなクラウド ストレージ サービスは、大規模で安全、低コスト、信頼性の高いクラウド ストレージ サービスを提供します。この記事では、Java を使用して Alibaba Cloud OSS に接続し、大規模なファイル管理とアクセス制御を実現する方法を紹介します。
1. 準備
2. Alibaba Cloud OSS SDK の紹介
Java プロジェクトで Alibaba Cloud OSS を使用するには、対応する SDK の依存関係を導入する必要があります。具体的な操作は次のとおりです:
プロジェクトの pom.xml ファイルに次の依存関係を追加します:
<dependencies> <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>3.11.1</version> </dependency> </dependencies>
mvn clean package
Java コードでは、まず Alibaba Cloud OSS との接続を確立する必要があり、認証にアクセス キー ID とアクセス キー シークレットを使用できます。コード例は次のとおりです:
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; public class OSSConnection { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 连接成功后可以进行后续的文件管理和访问控制操作 ossClient.shutdown(); // 关闭连接 } }
OSS サービスを通じて、アップロード、ダウンロード、削除などのファイル管理操作を実行できます。一般的なファイル管理操作の例をいくつか示します。
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.model.PutObjectRequest; public class FileUpload { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static final String bucketName = "your-bucket-name"; public static final String objectName = "your-object-name"; public static final String localFilePath = "your-local-file-path"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 上传文件 PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, new File(localFilePath)); ossClient.putObject(putObjectRequest); ossClient.shutdown(); } }
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.model.GetObjectRequest; public class FileDownload { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static final String bucketName = "your-bucket-name"; public static final String objectName = "your-object-name"; public static final String localFilePath = "your-local-file-path"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 下载文件 GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, objectName); ossClient.getObject(getObjectRequest, new File(localFilePath)); ossClient.shutdown(); } }
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; public class FileDelete { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static final String bucketName = "your-bucket-name"; public static final String objectName = "your-object-name"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 删除文件 ossClient.deleteObject(bucketName, objectName); ossClient.shutdown(); } }
OSS サービスを通じて、ファイルへのアクセスを制御し、ファイルの読み取りおよび書き込み権限を設定できます。コード例は次のとおりです。
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.model.AccessControlList; import com.aliyun.oss.model.CannedAccessControlList; public class FileAccessControl { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static final String bucketName = "your-bucket-name"; public static final String objectName = "your-object-name"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 设置文件公共读权限 ossClient.setObjectAcl(bucketName, objectName, CannedAccessControlList.PublicRead); ossClient.shutdown(); } }
import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.model.AccessControlList; import com.aliyun.oss.model.CannedAccessControlList; import com.aliyun.oss.model.ObjectPermission; public class FileAccessControl { public static final String endpoint = "oss-cn-hangzhou.aliyuncs.com"; public static final String accessKeyId = "your-access-key-id"; public static final String accessKeySecret = "your-access-key-secret"; public static final String bucketName = "your-bucket-name"; public static final String objectName = "your-object-name"; public static void main(String[] args) { OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 设置文件私有读写权限 ossClient.setObjectAcl(bucketName, objectName, CannedAccessControlList.Private); ossClient.shutdown(); } }
以上がJava を使用して Alibaba Cloud Object Storage に接続する方法: 大規模なファイル管理とアクセス制御を実現するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。