适用于与Amazon S3兼容的云存储的Minio Java SDK

Minio Java Client SDK提供简单的API来访问任何与Amazon S3兼容的对象存储服务。

本快速入门指南将向你展示如何安装客户端SDK并执行示例java程序。有关API和示例的完整列表,请查看Java Client API Reference文档。

最低需求

Java 1.8或更高版本:

  1. <dependency>
  2. <groupId>io.minio</groupId>
  3. <artifactId>minio</artifactId>
  4. <version>3.0.10</version>
  5. </dependency>

使用gradle

  1. dependencies {
  2. compile 'io.minio:minio:3.0.10'
  3. }

直接下载JAR

你可以到maven仓库直接下载最新版的JAR

快速入门示例-文件上传

本示例程序连接到一个对象存储服务,创建一个存储桶并上传一个文件到该桶中。

你需要有存储服务的三个参数才能连接到该服务。

参数 说明
Endpoint 对象存储服务的URL
Access Key Access key就像用户ID,可以唯一标识你的账户。
Secret Key Secret key是你账户的密码。

在下面的例子的中,我们将使用一个运行在https://play.minio.io:9000的免费托管的Minio服务。你可以随意使用此服务进行测试和开发。此示例中显示的访问凭据是公开的。

FileUploader.java

  1. import java.io.IOException;
  2. import java.security.NoSuchAlgorithmException;
  3. import java.security.InvalidKeyException;
  4. import org.xmlpull.v1.XmlPullParserException;
  5. import io.minio.MinioClient;
  6. import io.minio.errors.MinioException;
  7. public class FileUploader {
  8. public static void main(String[] args) throws NoSuchAlgorithmException, IOException, InvalidKeyException, XmlPullParserException {
  9. try {
  10. // 使用Minio服务的URL,端口,Access key和Secret key创建一个MinioClient对象
  11. MinioClient minioClient = new MinioClient("https://play.minio.io:9000", "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");
  12. // 检查存储桶是否已经存在
  13. boolean isExist = minioClient.bucketExists("asiatrip");
  14. if(isExist) {
  15. System.out.println("Bucket already exists.");
  16. } else {
  17. // 创建一个名为asiatrip的存储桶,用于存储照片的zip文件。
  18. minioClient.makeBucket("asiatrip");
  19. }
  20. // 使用putObject上传一个文件到存储桶中。
  21. minioClient.putObject("asiatrip","asiaphotos.zip", "/home/user/Photos/asiaphotos.zip");
  22. System.out.println("/home/user/Photos/asiaphotos.zip is successfully uploaded as asiaphotos.zip to `asiatrip` bucket.");
  23. } catch(MinioException e) {
  24. System.out.println("Error occurred: " + e);
  25. }
  26. }
  27. }

编译FileUploader

  1. javac -cp "minio-3.0.9-all.jar" FileUploader.java

运行FileUploader

  1. java -cp "minio-3.0.9-all.jar:." FileUploader
  2. /home/user/Photos/asiaphotos.zip is successfully uploaded as asiaphotos.zip to `asiatrip` bucket.
  3. mc ls play/asiatrip/
  4. [2016-06-02 18:10:29 PDT] 82KiB asiaphotos.zip

API文档

下面链接是完整的API文档

完整示例: Bucket Operations

贡献者指南

Build StatusBuild status

原文: https://docs.minio.io/cn/java-client-quickstart-guide.html