Java 快速入門指南
適用於 Amazon S3 相容雲端儲存的 MinIO Java SDK 
MinIO Java SDK 是簡單儲存服務 (又稱 S3) 用戶端,用於對任何 Amazon S3 相容物件儲存服務執行儲存桶和物件操作。
如需完整的 API 和範例清單,請參閱 Java 客戶端 API 參考 文件。
最低需求
Java 1.8 或以上版本。
Maven 用法
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.5.13</version>
</dependency>
Gradle 用法
dependencies {
implementation("io.minio:minio:8.5.13")
}
JAR 下載
最新的 JAR 可從這裡下載
快速入門範例 - 檔案上傳器
此範例程式會連線到物件儲存伺服器,在伺服器上建立儲存桶,然後將檔案上傳到儲存桶。
您需要三個項目才能連線到物件儲存伺服器。
參數 |
描述 |
---|---|
端點 |
S3 服務的 URL。 |
存取金鑰 |
S3 服務中帳戶的存取金鑰(又稱使用者 ID)。 |
私密金鑰 |
S3 服務中帳戶的私密金鑰(又稱密碼)。 |
此範例使用 MinIO 伺服器遊樂場 https://play.min.io。隨時使用此服務進行測試和開發。
FileUploader.java
import io.minio.BucketExistsArgs;
import io.minio.MakeBucketArgs;
import io.minio.MinioClient;
import io.minio.UploadObjectArgs;
import io.minio.errors.MinioException;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
public class FileUploader {
public static void main(String[] args)
throws IOException, NoSuchAlgorithmException, InvalidKeyException {
try {
// Create a minioClient with the MinIO server playground, its access key and secret key.
MinioClient minioClient =
MinioClient.builder()
.endpoint("https://play.min.io")
.credentials("Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG")
.build();
// Make 'asiatrip' bucket if not exist.
boolean found =
minioClient.bucketExists(BucketExistsArgs.builder().bucket("asiatrip").build());
if (!found) {
// Make a new bucket called 'asiatrip'.
minioClient.makeBucket(MakeBucketArgs.builder().bucket("asiatrip").build());
} else {
System.out.println("Bucket 'asiatrip' already exists.");
}
// Upload '/home/user/Photos/asiaphotos.zip' as object name 'asiaphotos-2015.zip' to bucket
// 'asiatrip'.
minioClient.uploadObject(
UploadObjectArgs.builder()
.bucket("asiatrip")
.object("asiaphotos-2015.zip")
.filename("/home/user/Photos/asiaphotos.zip")
.build());
System.out.println(
"'/home/user/Photos/asiaphotos.zip' is successfully uploaded as "
+ "object 'asiaphotos-2015.zip' to bucket 'asiatrip'.");
} catch (MinioException e) {
System.out.println("Error occurred: " + e);
System.out.println("HTTP trace: " + e.httpTrace());
}
}
}
編譯 FileUploader
$ javac -cp minio-8.5.13-all.jar FileUploader.java
執行 FileUploader
$ java -cp minio-8.5.13-all.jar:. FileUploader
'/home/user/Photos/asiaphotos.zip' is successfully uploaded as object 'asiaphotos-2015.zip' to bucket 'asiatrip'.
$ mc ls play/asiatrip/
[2016-06-02 18:10:29 PDT] 82KiB asiaphotos-2015.zip
更多參考資料
深入探索
貢獻
請參考 貢獻者指南