官网地址如下:
https://docs.min.io/
什么是MinIO?
MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。它与 Amazon S3 云存储服务 API 兼容。使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。
MinIO是高性能对象存储,什么是对象存储(Object Storage Service),对象存储是支持海量用户远程访问的无限容量廉价存储系统,既然是存储系统。
它由桶(bucket,对应Windows下的文件夹),组成目录结构,桶中直接存放对象(Object,对应Windwos下的文件),桶中不能再创建通,但是要能创建文件夹
怎么用?
下载和本地启动MinIO
下载Mi
访问官网:https://docs.min.io 进入下载页面点击windows
点击下载服务端
找到当前目录,shift+右键 ,打开powershall,通过命令行启动Minio
minio server ./data
到此对minio的配置全部结束,也启动了服务。
现在与java集成
参考官网
导入maven 依赖
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.3.9</version>
</dependency>
<!-- okHttp -->
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.9.0</version>
</dependency>
核心代码
FileUploader.java
import io.minio.BucketExistsArgs;
import io.minio.MakeBucketArgs;
import io.minio.MinioClient;
import io.minio.UploadObjectArgs;
import io.minio.errors.MinioException;
public class FileUploader {
public static void main(String[] args) throws Exception{
try {
MinioClient minioClient =
MinioClient.builder()
.endpoint("http://localhost:9000")
.credentials("minioadmin", "minioadmin")
.build();
boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket("huike-crm").build());
if (!found) {
minioClient.makeBucket(MakeBucketArgs.builder().bucket("huike-crm").build());
} else {
System.out.println("Bucket 'huike-crm' already exists.");
}
minioClient.uploadObject(UploadObjectArgs.builder()
.bucket("huike-crm")
.object("10.jpg")
.filename("C:\\Users\\Administrator\\Pictures\\Saved Pictures\\10.jpg")
.build());
System.out.println("SUCCESS!!!!");
} catch (MinioException e) {
System.out.println("Error occurred: " + e);
System.out.println("HTTP trace: " + e.httpTrace());
}
}
}