快速开始
S3兼容¶
MOS Java SDK是Simple Storage Service(又称S3)客户端,可对任何Amazon S3兼容的对象存储服务执行桶(bucket)和对象(object)操作。
有关API和示例的完整列表,请参阅Java客户端API参考文档。
最低要求¶
Java 1.8或更高版本。
Maven用法¶
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.5.4</version>
</dependency>
Gradle用法¶
dependencies {
implementation("io.minio:minio:8.5.4")
}
JAR下载¶
最新的JAR文件可从此处 下载
快速入门示例 - 文件上传器¶
此示例程序连接到对象存储服务器,在服务器上创建一个桶(bucket),然后将文件上传到该桶(bucket)。
连接到对象存储服务器需要三个参数。
参数 | 描述 |
---|---|
Endpoint | S3服务的URL。 |
Access Key | S3服务中帐户的访问密钥(也称为用户ID)。 |
Secret Key | S3服务中帐户的秘密密钥(也称为密码)。 |
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("Q3A***********3P2F", "zuf+t************************KYY3TG")
.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.4-all.jar FileUploader.java
运行 FileUploader¶
$ java -cp minio-8.5.4-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