jjava minio创建文件夹
时间: 2025-02-04 22:19:37 浏览: 62
使用MinIO Java SDK创建存储桶或目录
创建存储桶
为了在Java中使用MinIO创建存储桶,首先需要引入MinIO的Maven依赖。对于最新版本的支持,可以参照如下配置[^3]:
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.5.1</version>
</dependency>
接着,在代码中初始化MinioClient
实例并调用makeBucket()
方法来创建新的存储桶。
import io.minio.MinioClient;
import io.minio.errors.*;
public class CreateBucketExample {
public static void main(String[] args) throws Exception {
try {
MinioClient minioClient = MinioClient.builder()
.endpoint("https://play.min.io")
.credentials("YOUR-ACCESSKEYID", "YOUR-SECRETACCESSKEY")
.build();
boolean found = minioClient.bucketExists(
BucketExistsArgs.builder().bucket("my-bucketname").build());
if (!found) { // 如果不存在则创建新存储桶
minioClient.makeBucket(MakeBucketArgs.builder().bucket("my-bucketname").build());
} else {
System.out.println("Bucket already exists.");
}
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
此段代码展示了如何检测指定名称的存储桶是否存在;如果不存在,则会尝试创建它。
创建虚拟目录(模拟文件夹)
值得注意的是,在对象存储系统如MinIO中,“文件夹”的概念实际上是通过带有共同前缀的对象路径来实现的。因此所谓的“创建文件夹”,实际上是指上传一个具有特定前缀名的对象到目标存储桶内。当涉及到创建空文件夹时,需特别关注所使用的SDK版本,至少应为7.1.0版以确保功能正常工作[^2]。
下面是一个用于创建名为path/to/
的虚拟文件夹的例子:
try {
MinioClient minioClient = MinioClient.builder()
.endpoint("https://play.min.io")
.credentials("YOUR-ACCESSKEYID", "YOUR-SECRETACCESSKEY")
.build();
minioClient.putObject(PutObjectArgs.builder()
.bucket("my-bucketname") // 存储桶名字
.object("path/to/") // 对象键即虚拟文件夹路径
.stream(new ByteArrayInputStream(new byte[]{}), 0, -1)
.build());
} catch (Exception e) {
throw new RuntimeException(e);
}
上述代码片段说明了怎样向已存在的存储桶里放置一个零字节大小的对象作为标记,以此方式达到创建虚拟文件夹的效果。
相关推荐


















