首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >minio上传下载

minio上传下载

作者头像
阿超
发布2023-10-05 08:12:24
发布2023-10-05 08:12:24
64300
代码可运行
举报
文章被收录于专栏:快乐阿超快乐阿超
运行总次数:0
代码可运行

首先是安装,注意选择合对应的的系统和安装方式

https://min.io/docs/minio/kubernetes/upstream/

例如我在windows。直接下载

https://dl.min.io/server/minio/release/windows-amd64/minio.exe

然后运行

代码语言:javascript
代码运行次数:0
运行
复制
minio.exe server D:\

打开localhost:9000,默认minioadmin:minioadmin进入界面

然后是代码实现上传下载,先引入依赖

代码语言:javascript
代码运行次数:0
运行
复制
<dependency>
    <groupId>io.minio</groupId>
    <artifactId>minio</artifactId>
    <version>8.5.6</version>
</dependency>

然后是代码:

代码语言:javascript
代码运行次数:0
运行
复制
package com.ruben;

import io.minio.*;
import io.minio.errors.MinioException;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;

public class MinioDemo {
    public static void main(String[] args) {
        try {
            // 初始化客户端
            MinioClient minioClient = MinioClient.builder()
                    .endpoint("http://localhost:9000")  // 更新为你的Minio服务器地址
                    .credentials("minioadmin", "minioadmin")  // 使用你的访问和密钥
                    .build();

            // 检查一个存储桶是否存在
            BucketExistsArgs testbucket = BucketExistsArgs.builder().bucket("testbucket").build();
            boolean isExist = minioClient.bucketExists(testbucket);
            if (!isExist) {
                // 创建一个名为'testbucket'的存储桶
                minioClient.makeBucket(MakeBucketArgs.builder().bucket("testbucket").build());
            }

            // 上传一个文件
            String content = "Hello, Minio!";
            InputStream stream = new ByteArrayInputStream(content.getBytes());
            ObjectWriteResponse res = minioClient.putObject(PutObjectArgs.builder().bucket("testbucket")
                    .object("hello.txt").contentType("text/plain")
                    .stream(stream, content.length(), -1).build());

            // 下载文件
            InputStream downloadedStream = minioClient.getObject(GetObjectArgs.builder()
                    .bucket("testbucket").object("hello.txt").build());
            String downloadedContent = readFromInputStream(downloadedStream);
            System.out.println("Downloaded content: " + downloadedContent);
            downloadedStream.close();

        } catch (MinioException e) {
            System.out.println("Error occurred: " + e);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static String readFromInputStream(InputStream is) throws IOException {
        byte[] buffer = new byte[1024];
        int bytesRead;
        StringBuilder sb = new StringBuilder();
        while ((bytesRead = is.read(buffer)) != -1) {
            sb.append(new String(buffer, 0, bytesRead));
        }
        return sb.toString();
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档