跳转至

快速开始

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