开源对象存储工具Minio的使用(Java)

6 篇文章 2 订阅
3 篇文章 1 订阅

本文章仅作为个人笔记

官方网站/官方文档 / 个人 demo
  • minio部署
    • docker (对外公开9000端口,实例名为minio,挂载本地/data目录)

      docker run --name minio -v /data:/data -p 9000:9000 \
      -e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE" \
      -e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
      minio/minio server  /data
      
    • 其他方式参考官方文档

  • minio使用
    • 引用(gradle)

      dependencies {
        implementation 'io.minio:minio:3.0.10'
      }
      
    • 上传文件

      # 获取连接
      MinioClient minioClient = new MinioClient(host, accessKey, secretKey);
      # 判断存储桶是否存在
      boolean isExist = minioClient.bucketExists(bucketName);
      if (!isExist) {
        # 不存在时创建存储桶
        minioClient.makeBucket(bucketName);
      }
      # 上传文件到存储桶
      minioClient.putObject(bucketName, file.getOriginalFilename(), file.getInputStream()
                  , file.getContentType());
      
    • 需要下载文件时可能需要用到文件信息同时用到文件流,而minio这里由于是公开库,所以是分开处理的,需要调用2个api才行。

    • 获取文件信息(包含文件名/文件大小/文件类型等信息)

      minioClient.statObject(bucketName, objectName);
      
    • 获取文件流(用于下载)

      minioClient.getObject(bucketName, objectName);
      
    • 基础的使用就到这了,代码可以直接参考完整demo

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值